body {
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    margin: 0;
    min-width: 320px;
  }
  .screenReaderOnly {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
  }
  .phet-modal-portal {
    z-index: 1000;
  }
  .phet-modal-portal .phet-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.1) !important;
    backdrop-filter: blur(5px);
    z-index: 200;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .phet-modal-portal .phet-modal-overlay .phet-modal-content {
    inset: 0 !important;
    position: relative !important;
    margin: 20px;
    background: #ffffff !important;
    max-width: 750px;
    overscroll-behavior: contain;
    border-radius: 5px !important;
    border: none;
    background: none;
    place-self: center;
    padding: 30px;
  }
  .phet-modal-portal .phet-modal-overlay .phet-modal-content .close-modal {
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font-weight: 300;
    position: absolute;
    height: 30px;
    width: 30px;
    transform: rotate(0);
    transition: 0.2s;
    top: 25px;
    right: 25px;
    padding: 5px;
  }
  .rtl .phet-modal-portal .phet-modal-overlay .phet-modal-content .close-modal {
    right: auto;
    left: 25px;
  }
  .phet-modal-portal .phet-modal-overlay .phet-modal-content .spinner {
    padding-block: 190px;
  }
  @media (max-width: 500px) {
    .phet-modal-portal .phet-modal-overlay .phet-modal-content {
      width: calc(100vw - 40px);
      height: calc(100vh - 40px);
      margin: 0;
    }
  }
  @media (min-width: 501px) {
    .phet-modal-portal .phet-modal-overlay .phet-modal-content {
      width: 80vw;
    }
  }
  .phet-modal-portal .phet-modal-overlay {
    /**
  
  This file is intended to house css rules that apply to all or multiple pages across the site.
  
  This file is NOT intended to house variables that are common to other less files. If you need to add a variable that
  is exported to other files, please add that to commonVars.less instead.
  
  This file should NOT be imported by any file other than phet-app.less.
  
   */
    /**
    *  Code derived from SpinKit and used under the MIT License
    *  Source: https://github.com/tobiasahlin/SpinKit
    **/
    /*
   * //Copyright 2023, University of Colorado Boulder
   */
    /*
   * //Copyright 2023, University of Colorado Boulder
   */
    /*
   * //Copyright 2023, University of Colorado Boulder
   */
    /*
   * //Copyright 2023, University of Colorado Boulder
   */
  }
  .phet-modal-portal .phet-modal-overlay ul {
    list-style-type: none;
  }
  .phet-modal-portal .phet-modal-overlay ul,
  .phet-modal-portal .phet-modal-overlay ol {
    margin: 0;
    padding: 0;
  }
  .phet-modal-portal .phet-modal-overlay button,
  .phet-modal-portal .phet-modal-overlay input {
    font-size: 1em;
    font-family: 'Roboto', sans-serif;
  }
  .phet-modal-portal .phet-modal-overlay select {
    height: 30px;
    font-size: 1em;
    font-family: 'Roboto', sans-serif;
  }
  .phet-modal-portal .phet-modal-overlay h1,
  .phet-modal-portal .phet-modal-overlay h2,
  .phet-modal-portal .phet-modal-overlay h3,
  .phet-modal-portal .phet-modal-overlay h4,
  .phet-modal-portal .phet-modal-overlay h5,
  .phet-modal-portal .phet-modal-overlay p {
    font-size: inherit;
    font-weight: inherit;
    margin: 0;
  }
  .phet-modal-portal .phet-modal-overlay .h1,
  .phet-modal-portal .phet-modal-overlay .h2,
  .phet-modal-portal .phet-modal-overlay .h3,
  .phet-modal-portal .phet-modal-overlay .h4,
  .phet-modal-portal .phet-modal-overlay .h5,
  .phet-modal-portal .phet-modal-overlay .p {
    margin: 0;
    line-height: 1.3;
  }
  .phet-modal-portal .phet-modal-overlay .h1 {
    font-size: 2.2em;
    font-weight: 600;
  }
  .phet-modal-portal .phet-modal-overlay .h2 {
    font-size: 1.6em;
    font-weight: 600;
  }
  .phet-modal-portal .phet-modal-overlay .h3 {
    font-size: 1.4em;
    font-weight: 600;
  }
  .phet-modal-portal .phet-modal-overlay .h4 {
    font-size: 1.2em;
    font-weight: 400;
  }
  .phet-modal-portal .phet-modal-overlay .h5 {
    font-size: 1.1em;
  }
  .phet-modal-portal .phet-modal-overlay .p,
  .phet-modal-portal .phet-modal-overlay .td,
  .phet-modal-portal .phet-modal-overlay .li {
    font-weight: 300;
  }
  .phet-modal-portal .phet-modal-overlay .default-link {
    color: blue;
  }
  .phet-modal-portal .phet-modal-overlay .inline-link {
    text-decoration: underline;
  }
  .phet-modal-portal .phet-modal-overlay .floating-link {
    text-decoration: none;
    text-transform: uppercase;
  }
  .phet-modal-portal .phet-modal-overlay .inline-link,
  .phet-modal-portal .phet-modal-overlay .floating-link {
    color: #6c6c6c;
    cursor: pointer;
    font-weight: 300;
  }
  .phet-modal-portal .phet-modal-overlay .inline-link:hover,
  .phet-modal-portal .phet-modal-overlay .floating-link:hover,
  .phet-modal-portal .phet-modal-overlay .inline-link:active,
  .phet-modal-portal .phet-modal-overlay .floating-link:active,
  .phet-modal-portal .phet-modal-overlay .inline-link:focus,
  .phet-modal-portal .phet-modal-overlay .floating-link:focus {
    color: #e01e5a;
    text-decoration: underline;
  }
  .phet-modal-portal .phet-modal-overlay button:active {
    color: #e01e5a;
  }
  .phet-modal-portal .phet-modal-overlay .inline-link:visited {
    color: #840633;
  }
  .phet-modal-portal .phet-modal-overlay .no-link {
    text-decoration: none;
    color: black;
  }
  .phet-modal-portal .phet-modal-overlay .warning-icon {
    height: 50px;
    text-align: center;
    margin: auto;
    display: block;
  }
  .phet-modal-portal .phet-modal-overlay .eggplant-button {
    text-transform: uppercase;
    background: transparent;
    text-decoration: none;
    padding: 10px;
    display: flex;
    align-items: center;
    transition: color 0.2s, background 0.2s;
    cursor: pointer;
    color: rgb(82, 23, 100);
    border: 1px solid rgb(82, 23, 100);
  }
  .phet-modal-portal .phet-modal-overlay .eggplant-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .phet-modal-portal .phet-modal-overlay .eggplant-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .phet-modal-portal .phet-modal-overlay .eggplant-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .phet-modal-portal .phet-modal-overlay .eggplant-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .phet-modal-portal .phet-modal-overlay .eggplant-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .phet-modal-portal .phet-modal-overlay .eggplant-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .phet-modal-portal .phet-modal-overlay .eggplant-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .phet-modal-portal .phet-modal-overlay .eggplant-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .phet-modal-portal .phet-modal-overlay .eggplant-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .phet-modal-portal .phet-modal-overlay .eggplant-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .phet-modal-portal .phet-modal-overlay .eggplant-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .phet-modal-portal .phet-modal-overlay .eggplant-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .phet-modal-portal .phet-modal-overlay .eggplant-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .phet-modal-portal .phet-modal-overlay .eggplant-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .phet-modal-portal .phet-modal-overlay .eggplant-button:hover {
    background: rgb(82, 23, 100);
  }
  .phet-modal-portal .phet-modal-overlay .gray-text-button {
    text-decoration: none;
    text-transform: uppercase;
    color: #6c6c6c;
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font-weight: 300;
    text-transform: none;
  }
  .phet-modal-portal .phet-modal-overlay .see-more-button {
    text-decoration: none;
    display: flex;
    align-items: center;
  }
  .phet-modal-portal .phet-modal-overlay .see-more-button svg {
    width: 20px;
    vertical-align: bottom;
    padding-left: 7px;
    padding-right: 7px;
  }
  .rtl .phet-modal-portal .phet-modal-overlay .see-more-button svg {
    transform: scaleX(-1);
  }
  .phet-modal-portal .phet-modal-overlay .see-more-button:hover {
    cursor: pointer;
  }
  .phet-modal-portal .phet-modal-overlay .see-more-button:hover path {
    fill: #e01e5a;
  }
  .phet-modal-portal .phet-modal-overlay .italic {
    font-style: italic;
  }
  .phet-modal-portal .phet-modal-overlay .bold {
    font-weight: 600;
  }
  .phet-modal-portal .phet-modal-overlay .standby-error {
    padding-block: 100px;
    padding-inline: 5px;
    text-align: center;
  }
  .phet-modal-portal .phet-modal-overlay .donate-link {
    border: 1px solid #e01e5a;
    background: transparent;
    font-size: 1em;
    color: #e01e5a;
    text-decoration: none;
    text-transform: uppercase;
    display: inline-block;
    margin: 6px;
    padding: 5px 6px;
    transition: 0.2s;
  }
  .phet-modal-portal .phet-modal-overlay .donate-link:hover,
  .phet-modal-portal .phet-modal-overlay .donate-link:focus {
    color: #ffffff;
    background: #e01e5a;
    transition: 0.2s;
  }
  .phet-modal-portal .phet-modal-overlay .film-strip {
    position: relative;
  }
  .phet-modal-portal .phet-modal-overlay .film-strip .scroll-button-container {
    position: absolute;
    height: 100%;
    width: 80px;
    z-index: 1;
    border: hidden;
    pointer-events: none;
    display: flex;
    align-items: center;
    font-size: 40px;
    padding: 0;
  }
  .phet-modal-portal .phet-modal-overlay .film-strip .scroll-button-container .scroll-button {
    background: transparent;
    pointer-events: auto;
    border: none;
    height: 90%;
    padding: 0px;
    cursor: pointer;
  }
  .phet-modal-portal .phet-modal-overlay .film-strip .scroll-button-container .scroll-button .arrow {
    height: 90%;
    width: 22px;
  }
  .phet-modal-portal .phet-modal-overlay .film-strip .scroll-button-container .scroll-button:hover path {
    fill: black;
  }
  .phet-modal-portal .phet-modal-overlay .film-strip .scroll-button-container.hidden {
    display: none;
  }
  .phet-modal-portal .phet-modal-overlay .film-strip .scroll-button-container.left {
    left: 0;
    background: linear-gradient(to right, white 5%, rgba(255, 255, 255, 0));
  }
  .ltr .phet-modal-portal .phet-modal-overlay .film-strip .scroll-button-container.left {
    justify-content: flex-start;
  }
  .rtl .phet-modal-portal .phet-modal-overlay .film-strip .scroll-button-container.left {
    justify-content: flex-end;
  }
  .eggplant .phet-modal-portal .phet-modal-overlay .film-strip .scroll-button-container.left {
    background: linear-gradient(to right, #f7f4f9 5%, rgba(255, 255, 255, 0));
  }
  .phet-modal-portal .phet-modal-overlay .film-strip .scroll-button-container.left .scroll-button {
    padding-left: 8px;
    padding-right: 30px;
  }
  .phet-modal-portal .phet-modal-overlay .film-strip .scroll-button-container.right {
    right: 0;
    background: linear-gradient(to left, white 5%, rgba(255, 255, 255, 0));
  }
  .ltr .phet-modal-portal .phet-modal-overlay .film-strip .scroll-button-container.right {
    justify-content: flex-end;
  }
  .rtl .phet-modal-portal .phet-modal-overlay .film-strip .scroll-button-container.right {
    justify-content: flex-start;
  }
  .eggplant .phet-modal-portal .phet-modal-overlay .film-strip .scroll-button-container.right {
    background: linear-gradient(to left, #f7f4f9 5%, rgba(255, 255, 255, 0));
  }
  .phet-modal-portal .phet-modal-overlay .film-strip .scroll-button-container.right .scroll-button {
    padding-right: 8px;
    padding-left: 30px;
  }
  .phet-modal-portal .phet-modal-overlay .film-strip ul {
    display: flex;
    flex-direction: row;
    overflow-x: scroll;
    overflow-y: hidden;
    overflow: -moz-scrollbars-none;
    -ms-overflow-style: none;
    scroll-behavior: smooth;
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
    scroll-padding: 40px;
  }
  .phet-modal-portal .phet-modal-overlay .film-strip ul.related-simulations-collection {
    width: min-content;
    max-width: 100%;
    margin: auto;
  }
  .phet-modal-portal .phet-modal-overlay .film-strip ul li {
    scroll-snap-align: start;
  }
  .phet-modal-portal .phet-modal-overlay .film-strip ul::-webkit-scrollbar {
    width: 0 !important;
    display: none;
  }
  .phet-modal-portal .phet-modal-overlay .left .arrow path {
    transform: scale(-1) translate(-100%, -100%);
  }
  .phet-modal-portal .phet-modal-overlay .AdminForm .hiddenInput {
    display: none;
  }
  .phet-modal-portal .phet-modal-overlay .AdminForm label,
  .phet-modal-portal .phet-modal-overlay .AdminForm input,
  .phet-modal-portal .phet-modal-overlay .AdminForm select {
    display: block;
  }
  .phet-modal-portal .phet-modal-overlay .AdminForm label,
  .phet-modal-portal .phet-modal-overlay .AdminForm input[type=submit] {
    margin-top: 20px;
  }
  .phet-modal-portal .phet-modal-overlay .AdminForm input,
  .phet-modal-portal .phet-modal-overlay .AdminForm textarea,
  .phet-modal-portal .phet-modal-overlay .AdminForm select {
    width: 500px;
  }
  .phet-modal-portal .phet-modal-overlay .AdminForm label.checkbox-with-label {
    display: flex;
    gap: 5px;
  }
  .phet-modal-portal .phet-modal-overlay .AdminForm input[type=checkbox] {
    width: max-content;
  }
  .phet-modal-portal .phet-modal-overlay .AdminForm label.text-area-with-label {
    display: flex;
    flex-direction: column;
    margin-bottom: 30px;
  }
  .phet-modal-portal .phet-modal-overlay .AdminForm form {
    overflow: scroll;
    max-height: 80vh;
  }
  .phet-modal-portal .phet-modal-overlay .add-school-modal {
    max-width: 420px;
  }
  .phet-modal-portal .phet-modal-overlay .add-school-modal .add-school-form {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
  .phet-modal-portal .phet-modal-overlay .add-school-modal .add-school-form .button-container {
    display: flex;
    justify-content: space-evenly;
    margin-top: 20px;
  }
  .phet-modal-portal .phet-modal-overlay .add-school-modal .add-school-form .organization {
    width: 100%;
    max-width: 400px;
  }
  .phet-modal-portal .phet-modal-overlay .add-school-modal .add-school-form .invisible {
    display: none;
  }
  .phet-modal-portal .phet-modal-overlay .spinner {
    margin-inline: auto;
    padding-block: 40vh;
    width: 70px;
    text-align: center;
  }
  .phet-modal-portal .phet-modal-overlay .spinner > div {
    width: 18px;
    height: 18px;
    background-color: #6acef5;
    border-radius: 100%;
    display: inline-block;
    -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
    animation: sk-bouncedelay 1.4s infinite ease-in-out both;
  }
  .phet-modal-portal .phet-modal-overlay .spinner .bounce1 {
    -webkit-animation-delay: -0.32s;
    animation-delay: -0.32s;
  }
  .phet-modal-portal .phet-modal-overlay .spinner .bounce2 {
    -webkit-animation-delay: -0.16s;
    animation-delay: -0.16s;
  }
  @-webkit-keyframes sk-bouncedelay {
    0%,
    80%,
    100% {
      -webkit-transform: scale(0);
    }
    40% {
      -webkit-transform: scale(1);
    }
  }
  @keyframes sk-bouncedelay {
    0%,
    80%,
    100% {
      -webkit-transform: scale(0);
      transform: scale(0);
    }
    40% {
      -webkit-transform: scale(1);
      transform: scale(1);
    }
  }
  .phet-modal-portal .phet-modal-overlay .playWithSimsModal {
    max-width: 460px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 15px;
    row-gap: 30px;
  }
  .phet-modal-portal .phet-modal-overlay .playWithSimsModal .play-description {
    grid-column: 1 / 3;
  }
  .phet-modal-portal .phet-modal-overlay .playWithSimsModal .button {
    grid-row: 2 / 3;
    align-self: center;
    justify-self: center;
  }
  .phet-modal-portal .phet-modal-overlay .offlineAccessDonationAsk {
    display: grid;
    height: max-content;
    gap: 20px;
    max-width: 650px;
    margin: 20px;
  }
  @media (max-width: 650px) {
    .phet-modal-portal .phet-modal-overlay .offlineAccessDonationAsk {
      grid-template-areas: 'phet-girl' 'description' 'buttons';
    }
  }
  @media (min-width: 651px) {
    .phet-modal-portal .phet-modal-overlay .offlineAccessDonationAsk {
      grid-template-rows: 1fr auto;
      grid-template-areas: 'phet-girl description' 'phet-girl buttons';
    }
  }
  .phet-modal-portal .phet-modal-overlay .offlineAccessDonationAsk .phet-girl {
    width: 208px;
    grid-area: phet-girl;
    justify-self: center;
  }
  .phet-modal-portal .phet-modal-overlay .offlineAccessDonationAsk .img-overlay {
    grid-area: phet-girl;
    height: 79px;
    margin: 4px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .phet-modal-portal .phet-modal-overlay .offlineAccessDonationAsk .donation-ask-description {
    grid-area: description;
  }
  .phet-modal-portal .phet-modal-overlay .offlineAccessDonationAsk .button-container {
    grid-area: buttons;
    display: flex;
    gap: 20px;
  }
  @media (max-width: 650px) {
    .phet-modal-portal .phet-modal-overlay .offlineAccessDonationAsk .button-container {
      justify-self: center;
    }
  }
  @media (min-width: 651px) {
    .phet-modal-portal .phet-modal-overlay .offlineAccessDonationAsk .button-container {
      justify-self: end;
    }
  }
  .phet-modal-portal .phet-modal-overlay .offlineAccessDonationAsk .maybe-later-button {
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font-weight: 300;
    text-transform: none;
  }
  .phet-modal-portal .phet-modal-overlay .offlineAccessDonationAsk .donate-link {
    padding: 5px 15px;
    text-align: center;
  }
  .phet-modal-portal .phet-modal-overlay .link-clever-account .label {
    display: flex;
    flex-direction: column;
    margin-block: 20px;
    gap: 5px;
  }
  .phet-modal-portal .phet-modal-overlay .link-clever-account .label .input {
    padding: 5px;
    font-weight: 100;
    font-family: 'Roboto', sans-serif;
  }
  .phet-modal-portal .phet-modal-overlay .link-clever-account .submit {
    margin: auto;
  }
  .phet-modal-portal .phet-modal-overlay .registration-donate-modal {
    display: grid;
    grid-template-areas: 'registrationThanks_header registrationThanks_header' 'registrationThanks_text registrationThanks_image' 'registrationThanks_buttons registrationThanks_buttons';
  }
  .phet-modal-portal .phet-modal-overlay .registration-donate-modal .ul {
    list-style-type: disc;
    padding-inline-start: 40px;
  }
  .phet-modal-portal .phet-modal-overlay .registration-donate-modal .donate-top-section {
    grid-area: registrationThanks_header;
    height: 75px;
    line-height: 75px;
    text-align: center;
    font-size: 1.75em;
    margin-bottom: 20px;
  }
  .phet-modal-portal .phet-modal-overlay .registration-donate-modal .donate-img {
    grid-area: registrationThanks_image;
    max-width: 220px;
  }
  .phet-modal-portal .phet-modal-overlay .registration-donate-modal .donate-text {
    grid-area: registrationThanks_text;
    padding: 5px;
  }
  .phet-modal-portal .phet-modal-overlay .registration-donate-modal .donate-text .p,
  .phet-modal-portal .phet-modal-overlay .registration-donate-modal .donate-text .ul {
    padding-top: 5px;
  }
  .phet-modal-portal .phet-modal-overlay .registration-donate-modal .donate-buttons-holder {
    grid-area: registrationThanks_buttons;
    margin: 20px;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
  }
  .phet-modal-portal .phet-modal-overlay .embed-dialog {
    display: flex;
    flex-direction: column;
    row-gap: 20px;
  }
  .phet-modal-portal .phet-modal-overlay .embed-dialog .copy-text {
    display: flex;
    align-items: center;
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font-weight: 300;
  }
  .phet-modal-portal .phet-modal-overlay .embed-dialog .copy-text .fa-clone {
    font-size: 30px;
  }
  .phet-modal-portal .phet-modal-overlay .embed-dialog .copy-text .p {
    display: inline-block;
    padding-left: 10px;
  }
  .phet-modal-portal .phet-modal-overlay .embed-dialog .code-box {
    display: block;
    white-space: pre;
    width: 100%;
    max-width: 100%;
  }
  .phet-modal-portal .phet-modal-overlay .embed-dialog .h4 {
    font-weight: bold;
  }
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .alt-thumbnail-list {
    display: flex;
    align-items: flex-end;
  }
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .alt-thumbnail-list .alt-thumbnail:first-child button {
    margin-left: 0;
  }
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .alt-thumbnail-list .alt-thumbnail button {
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font-weight: 300;
    margin: 8px;
    position: relative;
  }
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .alt-thumbnail-list .alt-thumbnail button:focus,
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .alt-thumbnail-list .alt-thumbnail button:hover {
    box-shadow: 0 0 6px grey;
  }
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .alt-thumbnail-list .alt-thumbnail button .more-images {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    top: 0;
    background: rgba(0, 0, 0, 0.6);
    color: white;
    font-size: 28px;
    font-weight: 500;
  }
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .alt-thumbnail-list .alt-thumbnail img {
    display: block;
    max-height: 100px;
    object-fit: contain;
    border: 1px solid #d2d2d2;
  }
  @media (max-width: 500px) {
    .phet-modal-portal .phet-modal-overlay .image-picker-dialog .alt-thumbnail-list .alt-thumbnail img {
      max-width: 35vw;
    }
  }
  @media (min-width: 501px) {
    .phet-modal-portal .phet-modal-overlay .image-picker-dialog .alt-thumbnail-list .alt-thumbnail img {
      max-width: 100%;
    }
  }
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .alt-thumbnail-list .alt-thumbnail.hidden {
    display: none;
  }
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .title {
    text-align: center;
    padding: 10px 40px;
    margin: auto;
  }
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .image-carousel {
    display: flex;
    justify-content: center;
  }
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .image-carousel .left,
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .image-carousel .right {
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font-weight: 300;
    padding: 0 10px;
  }
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .image-carousel .left:focus svg,
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .image-carousel .right:focus svg,
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .image-carousel .left:hover svg,
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .image-carousel .right:hover svg {
    filter: brightness(0.7);
  }
  @media (max-width: 500px) {
    .phet-modal-portal .phet-modal-overlay .image-picker-dialog .image-carousel .left,
    .phet-modal-portal .phet-modal-overlay .image-picker-dialog .image-carousel .right {
      display: none;
    }
  }
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .image-carousel .slide {
    border: 1px solid #d2d2d2;
    max-height: 325px;
    object-fit: contain;
  }
  @media (max-width: 500px) {
    .phet-modal-portal .phet-modal-overlay .image-picker-dialog .image-carousel .slide {
      max-width: 100%;
    }
  }
  @media (min-width: 501px) {
    .phet-modal-portal .phet-modal-overlay .image-picker-dialog .image-carousel .slide {
      max-width: calc(100% - 80px);
    }
  }
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .alt-thumbnail-list {
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 10px;
  }
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .alt-thumbnail-list .alt-thumbnail button {
    margin: 4px;
    padding: 2px;
    border: 2px solid transparent;
  }
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .alt-thumbnail-list .alt-thumbnail.selected button {
    border-color: #e01e5a;
  }
  .phet-modal-portal .phet-modal-overlay .image-picker-dialog .ReactModal__Content {
    background: white !important;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .deprecated-button {
    text-transform: uppercase;
    background: transparent;
    text-decoration: none;
    padding: 10px;
    display: flex;
    align-items: center;
    transition: color 0.2s, background 0.2s;
    cursor: pointer;
    color: #6c6c6c;
    border: 1px solid #6c6c6c;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .deprecated-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .deprecated-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .deprecated-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .deprecated-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .deprecated-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .deprecated-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .deprecated-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .deprecated-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .deprecated-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .deprecated-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .deprecated-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .deprecated-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .deprecated-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .deprecated-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .deprecated-button:hover {
    background: #6c6c6c;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .run-options-button {
    text-transform: none;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .run-options-button .badge {
    margin-inline-end: 10px;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .run-options-button:hover.deprecated-button rect {
    fill: #ffffff;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .run-options-button:hover.deprecated-button .border {
    fill: black;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .run-options-button.deprecated-button rect {
    fill: transparent;
  }
  .phet-modal-portal .phet-modal-overlay .run-options-modal .run-options-button.deprecated-button .border {
    fill: #6c6c6c;
  }
  .phet-modal-portal .phet-modal-overlay .sign-in-page.login-form .login-donate-ask {
    background: transparent;
  }
  .phet-modal-portal .phet-modal-overlay .login-donate-ask .texts-container {
    display: grid;
    gap: 20px;
  }
  @media (min-width: 730px) {
    .phet-modal-portal .phet-modal-overlay .login-donate-ask .texts-container {
      grid-template-areas: "image text1" "image text2";
      grid-template-rows: auto 1fr;
    }
  }
  @media (max-width: 729px) {
    .phet-modal-portal .phet-modal-overlay .login-donate-ask .texts-container {
      grid-template-areas: "image" "text1" "text2";
    }
    .phet-modal-portal .phet-modal-overlay .login-donate-ask .texts-container .donation-image-grid {
      justify-self: center;
    }
  }
  .phet-modal-portal .phet-modal-overlay .login-donate-ask .texts-container .donation-image-grid {
    grid-area: image;
  }
  .phet-modal-portal .phet-modal-overlay .login-donate-ask .texts-container .login-donate-ask-text1 {
    grid-area: text1;
  }
  .phet-modal-portal .phet-modal-overlay .login-donate-ask .texts-container .login-donate-ask-text2 {
    grid-area: text2;
  }
  .phet-modal-portal .phet-modal-overlay .login-donate-ask .button-container {
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    gap: 20px;
    margin-top: 20px;
  }
  @media (min-width: 646px) {
    .phet-modal-portal .phet-modal-overlay .login-donate-ask .button-container {
      flex-direction: row;
    }
  }
  @media (max-width: 645px) {
    .phet-modal-portal .phet-modal-overlay .login-donate-ask .button-container {
      flex-direction: column-reverse;
    }
  }
  .phet-modal-portal .phet-modal-overlay .login-donate-ask .button-container .floating-link {
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font-weight: 300;
    text-transform: none;
  }
  .phet-modal-portal .phet-modal-overlay .login-donate-ask .donation-image-grid {
    position: relative;
  }
  .phet-modal-portal .phet-modal-overlay .login-donate-ask .donation-image-grid .donation-image-img {
    height: 250px;
  }
  .phet-modal-portal .phet-modal-overlay .login-donate-ask .donation-image-grid .donation-image-text {
    position: absolute;
    margin: 10px;
    top: 84px;
    left: 0;
    height: 81px;
    width: 254px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 500;
  }
  .phet-modal-portal .phet-modal-overlay .login-update-profile {
    display: grid;
    gap: 20px;
  }
  @media (min-width: 680px) {
    .phet-modal-portal .phet-modal-overlay .login-update-profile {
      grid-template-areas: "image text" "image buttons";
      grid-template-rows: 1fr auto;
    }
  }
  @media (max-width: 679px) {
    .phet-modal-portal .phet-modal-overlay .login-update-profile {
      grid-template-areas: "image" "text" "buttons";
    }
    .phet-modal-portal .phet-modal-overlay .login-update-profile .update-profile-image-grid,
    .phet-modal-portal .phet-modal-overlay .login-update-profile .text-container,
    .phet-modal-portal .phet-modal-overlay .login-update-profile .button-container {
      justify-self: center;
    }
    .phet-modal-portal .phet-modal-overlay .login-update-profile .text-container {
      text-align: center;
    }
  }
  .phet-modal-portal .phet-modal-overlay .login-update-profile .update-profile-image-grid {
    position: relative;
    grid-area: image;
  }
  .phet-modal-portal .phet-modal-overlay .login-update-profile .update-profile-image-grid .update-profile-image-img {
    height: 250px;
  }
  .phet-modal-portal .phet-modal-overlay .login-update-profile .update-profile-image-grid .update-profile-image-text {
    position: absolute;
    margin: 10px;
    top: 3px;
    left: 2px;
    height: 55px;
    width: 167px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 500;
  }
  .phet-modal-portal .phet-modal-overlay .login-update-profile .text-container {
    grid-area: text;
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: 10px;
  }
  .phet-modal-portal .phet-modal-overlay .login-update-profile .button-container {
    grid-area: buttons;
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 20px;
    margin-top: 20px;
  }
  @media (min-width: 646px) {
    .phet-modal-portal .phet-modal-overlay .login-update-profile .button-container {
      flex-direction: row;
    }
  }
  @media (max-width: 645px) {
    .phet-modal-portal .phet-modal-overlay .login-update-profile .button-container {
      flex-direction: column-reverse;
    }
  }
  .phet-modal-portal .phet-modal-overlay .login-update-profile .button-container .floating-link {
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font-weight: 300;
    text-transform: none;
  }
  .phet-modal-portal .phet-modal-overlay .sign-in-page {
    max-width: 600px;
    margin: auto;
  }
  .phet-modal-portal .phet-modal-overlay .sign-in-page.login-form {
    position: relative;
    z-index: 1;
  }
  .phet-modal-portal .phet-modal-overlay .sign-in-page.login-form .sign-in-panel,
  .phet-modal-portal .phet-modal-overlay .sign-in-page.login-form .login-update-profile,
  .phet-modal-portal .phet-modal-overlay .sign-in-page.login-form .login-donate-ask {
    border: 0;
    margin: 20px auto;
    padding: 30px;
  }
  .phet-modal-portal .phet-modal-overlay .login-form {
    width: 100vw;
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel {
    display: grid;
    gap: 5px 40px;
  }
  @media (max-width: 600px) {
    .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel {
      grid-template-areas: "header" "error" "email" "password" "forgot" "submit" "register" "resend" "clever";
    }
  }
  @media (min-width: 601px) {
    .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel {
      grid-template-areas: "header header" "error error" "email email" "password password" "forgot forgot" "submit submit" "register resend" "clever clever";
    }
    .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .resend {
      justify-self: end;
    }
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .header {
    grid-area: header;
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .error {
    grid-area: error;
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .email {
    grid-area: email;
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .password {
    grid-area: password;
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .forgot {
    grid-area: forgot;
    justify-self: end;
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .submit {
    grid-area: submit;
    justify-self: center;
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .resend {
    grid-area: resend;
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .register {
    grid-area: register;
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .clever {
    grid-area: clever;
    justify-self: center;
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .label {
    display: grid;
    gap: 5px;
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .label.password {
    grid-template-areas: "label-area" "input-area";
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .label.password .label-area {
    grid-area: label-area;
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .label.password .input-area {
    grid-area: input-area;
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .show-hide-password {
    background: none;
    border: none;
    justify-self: end;
    padding: 0 8px 5px 0;
    color: grey;
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .p,
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .eggplant-button,
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .clever {
    margin-top: 15px;
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .input {
    padding: 5px;
    margin-bottom: 5px;
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .clever {
    display: block;
    margin-inline: auto;
  }
  .phet-modal-portal .phet-modal-overlay .login-form .sign-in-panel .error {
    color: red;
  }
  .phet-modal-portal .phet-modal-overlay .error-list {
    color: red;
    grid-area: error-list;
  }
  .phet-modal-portal .phet-modal-overlay .error-list ul li {
    list-style: disc;
    margin-inline-start: 30px;
  }
  .phet-modal-portal .phet-modal-overlay .email-confirmed-page {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin: 50px 20px;
    padding-bottom: 200px;
  }
  .phet-modal-portal .phet-modal-overlay .change-email-page {
    margin: 50px 20px;
  }
  .phet-modal-portal .phet-modal-overlay .change-email-page .section {
    margin-inline: auto;
    max-width: 850px;
    padding-bottom: 96px;
    display: flex;
    row-gap: 16px;
    flex-direction: column;
    padding-inline: 20px;
  }
  .phet-modal-portal .phet-modal-overlay .change-email-page .section .eggplant-button {
    align-self: center;
  }
  .phet-modal-portal .phet-modal-overlay .user-misc-form {
    padding-inline: 20px;
    margin-inline: auto;
    margin-block: 40px;
    display: flex;
    flex-direction: column;
    max-width: 620px;
  }
  .phet-modal-portal .phet-modal-overlay .user-misc-form .false-input {
    background: transparent;
    border: none;
    color: black;
  }
  .phet-modal-portal .phet-modal-overlay .user-misc-form .label {
    display: block;
    padding-block: 15px 5px;
  }
  .phet-modal-portal .phet-modal-overlay .user-misc-form .input {
    padding: 5px;
    margin-bottom: 5px;
  }
  .phet-modal-portal .phet-modal-overlay .user-misc-form .submit-button {
    align-self: center;
    margin: 20px;
  }
  .badge-tooltip-inner {
    background: white;
    border: 1px solid black;
    border-radius: 5px;
    padding: 5px;
    width: 200px;
    font-weight: 300;
  }
  .badge-tooltip {
    position: absolute;
    background: transparent;
    z-index: 100;
  }
  @media (max-width: 796px) {
    .checkbox-tooltip {
      z-index: 211;
    }
  }
  .react-app {
    /**
  
  This file is intended to house css rules that apply to all or multiple pages across the site.
  
  This file is NOT intended to house variables that are common to other less files. If you need to add a variable that
  is exported to other files, please add that to commonVars.less instead.
  
  This file should NOT be imported by any file other than phet-app.less.
  
   */
    /* Copyright 2019, University of Colorado Boulder */
    /* Copyright 2020, University of Colorado Boulder */
    /* Copyright 2017, University of Colorado Boulder */
    /** Copyright 2017, University of Colorado Boulder **/
    /**
    *  Code derived from SpinKit and used under the MIT License
    *  Source: https://github.com/tobiasahlin/SpinKit
    **/
    /* Copyright 2017-2019, University of Colorado Boulder */
    /* Copyright 2017-2019, University of Colorado Boulder */
    /* Copyright 2017, University of Colorado Boulder */
    /*
   * //Copyright 2023, University of Colorado Boulder
   */
    /*
   * //Copyright 2023, University of Colorado Boulder
   */
  }
  .react-app ul {
    list-style-type: none;
  }
  .react-app ul,
  .react-app ol {
    margin: 0;
    padding: 0;
  }
  .react-app button,
  .react-app input {
    font-size: 1em;
    font-family: 'Roboto', sans-serif;
  }
  .react-app select {
    height: 30px;
    font-size: 1em;
    font-family: 'Roboto', sans-serif;
  }
  .react-app h1,
  .react-app h2,
  .react-app h3,
  .react-app h4,
  .react-app h5,
  .react-app p {
    font-size: inherit;
    font-weight: inherit;
    margin: 0;
  }
  .react-app .h1,
  .react-app .h2,
  .react-app .h3,
  .react-app .h4,
  .react-app .h5,
  .react-app .p {
    margin: 0;
    line-height: 1.3;
  }
  .react-app .h1 {
    font-size: 2.2em;
    font-weight: 600;
  }
  .react-app .h2 {
    font-size: 1.6em;
    font-weight: 600;
  }
  .react-app .h3 {
    font-size: 1.4em;
    font-weight: 600;
  }
  .react-app .h4 {
    font-size: 1.2em;
    font-weight: 400;
  }
  .react-app .h5 {
    font-size: 1.1em;
  }
  .react-app .p,
  .react-app .td,
  .react-app .li {
    font-weight: 300;
  }
  .react-app .default-link {
    color: blue;
  }
  .react-app .inline-link {
    text-decoration: underline;
  }
  .react-app .floating-link {
    text-decoration: none;
    text-transform: uppercase;
  }
  .react-app .inline-link,
  .react-app .floating-link {
    color: #6c6c6c;
    cursor: pointer;
    font-weight: 300;
  }
  .react-app .inline-link:hover,
  .react-app .floating-link:hover,
  .react-app .inline-link:active,
  .react-app .floating-link:active,
  .react-app .inline-link:focus,
  .react-app .floating-link:focus {
    color: #e01e5a;
    text-decoration: underline;
  }
  .react-app button:active {
    color: #e01e5a;
  }
  .react-app .inline-link:visited {
    color: #840633;
  }
  .react-app .no-link {
    text-decoration: none;
    color: black;
  }
  .react-app .warning-icon {
    height: 50px;
    text-align: center;
    margin: auto;
    display: block;
  }
  .react-app .eggplant-button {
    text-transform: uppercase;
    background: transparent;
    text-decoration: none;
    padding: 10px;
    display: flex;
    align-items: center;
    transition: color 0.2s, background 0.2s;
    cursor: pointer;
    color: rgb(82, 23, 100);
    border: 1px solid rgb(82, 23, 100);
  }
  .react-app .eggplant-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .react-app .eggplant-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .react-app .eggplant-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .react-app .eggplant-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .react-app .eggplant-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .react-app .eggplant-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .react-app .eggplant-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .react-app .eggplant-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .react-app .eggplant-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .react-app .eggplant-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .react-app .eggplant-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .react-app .eggplant-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .react-app .eggplant-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .react-app .eggplant-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .react-app .eggplant-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .react-app .eggplant-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .react-app .eggplant-button img {
    width: 25px;
    height: 25px;
    display: inline-block;
    padding-right: 10px;
  }
  .react-app .eggplant-button:hover {
    color: #ffffff;
    transition: color 0.2s, background 0.2s;
  }
  .react-app .eggplant-button:hover {
    background: rgb(82, 23, 100);
  }
  .react-app .gray-text-button {
    text-decoration: none;
    text-transform: uppercase;
    color: #6c6c6c;
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font-weight: 300;
    text-transform: none;
  }
  .react-app .see-more-button {
    text-decoration: none;
    display: flex;
    align-items: center;
  }
  .react-app .see-more-button svg {
    width: 20px;
    vertical-align: bottom;
    padding-left: 7px;
    padding-right: 7px;
  }
  .rtl .react-app .see-more-button svg {
    transform: scaleX(-1);
  }
  .react-app .see-more-button:hover {
    cursor: pointer;
  }
  .react-app .see-more-button:hover path {
    fill: #e01e5a;
  }
  .react-app .italic {
    font-style: italic;
  }
  .react-app .bold {
    font-weight: 600;
  }
  .react-app .standby-error {
    padding-block: 100px;
    padding-inline: 5px;
    text-align: center;
  }
  .react-app .app-badge {
    text-decoration: none;
  }
  .react-app .app-badge.ios-badge img {
    padding: 9px;
    width: 125px;
  }
  .react-app .app-badge img {
    width: 140px;
  }
  .react-app .tile .badge-holder.cheerpj {
    margin: 0 5px;
  }
  .react-app .badge-holder .badge {
    display: block;
  }
  .react-app .banner-container {
    max-width: 1300px;
    height: 170px;
    position: relative;
    text-align: center;
    margin: 0 auto;
  }
  .react-app .banner-container::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 170px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .react-app .banner-header-container {
    width: 315px;
    height: 100%;
    margin: 0 auto;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
  }
  .react-app .disclosure {
    margin-top: 2px;
  }
  .react-app .disclosure .hr {
    border-width: 1px 0 0 0;
    border-style: solid;
    border-color: #d2d2d2;
  }
  .react-app .disclosure .no-link {
    text-decoration: none;
    color: black;
  }
  .react-app .disclosure .dt {
    position: relative;
    padding-left: 35px;
    margin-left: -35px;
  }
  .react-app .disclosure .dt:hover .copy-anchor,
  .react-app .disclosure .dt:focus-within .copy-anchor {
    visibility: visible;
  }
  .react-app .disclosure .dt .copy-anchor {
    position: absolute;
    top: 18px;
    left: 0;
    cursor: pointer;
    border: none;
    background: none;
    visibility: hidden;
  }
  .react-app .disclosure .dt .tooltip {
    visibility: hidden;
    position: absolute;
    background: #d2d2d2;
    font-size: 10px;
    width: 140px;
    top: 20px;
    border: 1px solid #000;
    border-radius: 3px;
    padding: 2px;
  }
  .react-app .disclosure .dt .copy-anchor:hover .tooltip,
  .react-app .disclosure .dt .copy-anchor:focus-within .tooltip {
    visibility: visible;
  }
  .react-app .disclosure .dt:first-child .question {
    border-top: none;
    margin-top: -5px;
  }
  .react-app .disclosure .question {
    min-height: 56px;
    text-align: left;
    border-top: 1px solid lightgrey;
    margin-top: 10px;
    padding-top: 10px;
  }
  .react-app .disclosure .answer {
    padding: 10px 0 10px 20px;
    margin: 0;
    font-weight: 300;
  }
  .react-app .disclosure .answer.closed {
    display: none;
  }
  .react-app .disclosure .answer.open {
    display: block;
  }
  .react-app .expand-collapse-button {
    background: transparent;
    border: none;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    width: 100%;
    align-items: center;
    padding: 1px 3px 2px 0;
    text-align: start;
  }
  .react-app .expand-collapse-button img {
    height: 14px;
    transform: rotate(0deg);
    transition: 0.3s ease all;
  }
  .react-app .open .expand-collapse-button img {
    transform: rotate(45deg);
    transition: 0.3s ease all;
  }
  .react-app .donate-link {
    border: 1px solid #e01e5a;
    background: transparent;
    font-size: 1em;
    color: #e01e5a;
    text-decoration: none;
    text-transform: uppercase;
    display: inline-block;
    margin: 6px;
    padding: 5px 6px;
    transition: 0.2s;
  }
  .react-app .donate-link:hover,
  .react-app .donate-link:focus {
    color: #ffffff;
    background: #e01e5a;
    transition: 0.2s;
  }
  .react-app .error-panel div {
    margin: auto;
    padding: 30px;
  }
  .react-app .film-strip {
    position: relative;
  }
  .react-app .film-strip .scroll-button-container {
    position: absolute;
    height: 100%;
    width: 80px;
    z-index: 1;
    border: hidden;
    pointer-events: none;
    display: flex;
    align-items: center;
    font-size: 40px;
    padding: 0;
  }
  .react-app .film-strip .scroll-button-container .scroll-button {
    background: transparent;
    pointer-events: auto;
    border: none;
    height: 90%;
    padding: 0px;
    cursor: pointer;
  }
  .react-app .film-strip .scroll-button-container .scroll-button .arrow {
    height: 90%;
    width: 22px;
  }
  .react-app .film-strip .scroll-button-container .scroll-button:hover path {
    fill: black;
  }
  .react-app .film-strip .scroll-button-container.hidden {
    display: none;
  }
  .react-app .film-strip .scroll-button-container.left {
    left: 0;
    background: linear-gradient(to right, white 5%, rgba(255, 255, 255, 0));
  }
  .ltr .react-app .film-strip .scroll-button-container.left {
    justify-content: flex-start;
  }
  .rtl .react-app .film-strip .scroll-button-container.left {
    justify-content: flex-end;
  }
  .eggplant .react-app .film-strip .scroll-button-container.left {
    background: linear-gradient(to right, #f7f4f9 5%, rgba(255, 255, 255, 0));
  }
  .react-app .film-strip .scroll-button-container.left .scroll-button {
    padding-left: 8px;
    padding-right: 30px;
  }
  .react-app .film-strip .scroll-button-container.right {
    right: 0;
    background: linear-gradient(to left, white 5%, rgba(255, 255, 255, 0));
  }
  .ltr .react-app .film-strip .scroll-button-container.right {
    justify-content: flex-end;
  }
  .rtl .react-app .film-strip .scroll-button-container.right {
    justify-content: flex-start;
  }
  .eggplant .react-app .film-strip .scroll-button-container.right {
    background: linear-gradient(to left, #f7f4f9 5%, rgba(255, 255, 255, 0));
  }
  .react-app .film-strip .scroll-button-container.right .scroll-button {
    padding-right: 8px;
    padding-left: 30px;
  }
  .react-app .film-strip ul {
    display: flex;
    flex-direction: row;
    overflow-x: scroll;
    overflow-y: hidden;
    overflow: -moz-scrollbars-none;
    -ms-overflow-style: none;
    scroll-behavior: smooth;
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
    scroll-padding: 40px;
  }
  .react-app .film-strip ul.related-simulations-collection {
    width: min-content;
    max-width: 100%;
    margin: auto;
  }
  .react-app .film-strip ul li {
    scroll-snap-align: start;
  }
  .react-app .film-strip ul::-webkit-scrollbar {
    width: 0 !important;
    display: none;
  }
  .react-app .left .arrow path {
    transform: scale(-1) translate(-100%, -100%);
  }
  .react-app .sim-collection {
    list-style-type: none;
  }
  .react-app .no-results-message-holder {
    width: 100%;
    display: flex;
    align-items: center;
    flex-direction: column;
  }
  .react-app .no-results-message-holder .h4 {
    margin: 20px;
    width: 300px;
    text-align: center;
    font-weight: 200;
  }
  .react-app .no-results-message-holder img {
    height: 155px;
    width: 170px;
    margin-top: 10px;
  }
  .react-app .grid {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }
  .react-app .list {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
  }
  .react-app .list li {
    width: 100%;
  }
  .react-app .header-container {
    margin-left: 20px;
  }
  .react-app .header {
    margin-top: 18px;
  }
  .react-app .p.untranslated-text {
    margin: 1em 0;
  }
  .react-app .untranslated .overlay {
    content: '';
    position: absolute;
    background: white;
    opacity: 0.35;
  }
  .react-app .untranslated .tile::before {
    content: '';
    position: absolute;
    background: white;
    opacity: 0.35;
    z-index: 10;
    border-radius: 6px;
  }
  .grid.react-app .untranslated .tile::before,
  .strip.react-app .untranslated .tile::before {
    width: 210px;
    height: 224px;
  }
  .list.react-app .untranslated .tile::before {
    width: calc(100% - 251px - 20px * 2);
    height: 49px;
  }
  .react-app .untranslated .badge-holder {
    z-index: 11;
  }
  .react-app .untranslated .badge-holder::before {
    content: '';
    position: absolute;
    background: white;
    opacity: 0.35;
    z-index: 12;
    width: 20px;
    height: 20px;
  }
  @media (max-width: 365px) {
    .react-app .grid {
      justify-content: space-evenly;
    }
  }
  @media (min-width: 366px) and (max-width: 410px) {
    .react-app .grid {
      justify-content: space-between;
    }
  }
  @media (min-width: 411px) and (max-width: 796px) {
    .react-app .grid {
      justify-content: space-evenly;
    }
  }
  @media (min-width: 797px) {
    .react-app .grid {
      justify-content: start;
    }
  }
  .react-app div#header-line-text span:not(:last-child) {
    margin-right: 243px;
  }
  .react-app div#header div#header-line img {
    height: 40px;
  }
  @media (max-width: 826px) {
    .react-app div.registration-page .h1 {
      font-size: 24px;
    }
    .react-app svg.header-line-separator {
      width: 100px;
      margin-right: 11px;
    }
    .react-app div#header-line-text {
      display: none;
    }
    .react-app ul {
      padding: 0;
    }
  }
  .react-app .hero-image {
    position: relative;
    overflow: hidden;
  }
  @media (min-width: 1300px) {
    .react-app .hero-image {
      display: grid;
    }
    .react-app .hero-image .left {
      grid-column: 1 / 2;
      background: rgba(0, 0, 0, 0.6);
    }
    .react-app .hero-image .right {
      grid-column: 3 / 4;
    }
    .react-app .hero-image .left,
    .react-app .hero-image .right {
      margin: auto;
      width: 100%;
      height: 100%;
    }
    .react-app .hero-image .title-text-container {
      grid-column: 2 / 3;
      width: 1300px;
    }
    .react-app .hero-image.a11y-image .right {
      background: rgba(0, 0, 0, 0.6);
    }
    .react-app .hero-image.a11y-image .left {
      background: rgba(0, 0, 0, 0);
    }
    .react-app .hero-image.a11y-image .title-text-container {
      justify-self: end;
    }
    .react-app .hero-image.sim-image .left {
      background: rgba(0, 0, 0, 0);
    }
    .react-app .hero-image.sim-image .title-text-container {
      justify-self: center;
    }
  }
  .react-app .hero-image::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    z-index: -1;
  }
  .react-app .sim-image::before {
    content: "";
    background-image: url("/assets/img/simulations.jpg");
    filter: brightness(88%);
  }
  .react-app .teachers-image::before {
    content: "";
    background-image: url("/assets/img/teachers.jpg");
  }
  .react-app .a11y-image::before {
    content: "";
    background-image: url("/assets/img/accessibility.jpg");
  }
  .react-app .partnerships-image::before {
    content: "";
    background-image: url("/assets/img/partner-with-phet.jpg");
  }
  .react-app .title-text-container {
    text-align: center;
    margin-block: 0;
  }
  .react-app .title-text {
    margin: 0 auto;
    font-size: 2.8em;
    font-weight: 600;
    color: #ffffff;
    max-width: 530px;
    transition: 0.2s;
  }
  .react-app .leftTitleText {
    margin: 0;
    padding-left: 0;
    font-size: 2.4em;
  }
  .react-app .a11y-image .title-text {
    margin: 0;
    padding-left: 0;
    font-size: 2.4em;
  }
  .react-app .a11y-image .title-text {
    float: right;
    max-width: 385px;
  }
  .react-app .a11y-image .float-container {
    width: 100%;
    float: right;
  }
  .react-app .sub-text {
    color: white;
    max-width: 324px;
    margin: 20px 0 54px 0;
  }
  .react-app .a11y-image .sub-text {
    float: right;
  }
  .react-app a.play-link {
    display: inline-block;
    font-size: 1em;
    color: #ffffff;
    background: rgba(0, 0, 0, 0.4);
    padding: 15px;
    margin: 6px 0;
    text-transform: uppercase;
    text-decoration: none;
    border: 2px solid #6acef5;
    border-radius: 35px;
    transition: 0.2s;
    width: max-content;
  }
  .react-app a.play-link:hover,
  .react-app a.play-link:focus {
    background: #6acef5;
    color: black;
  }
  .react-app .a11y-image .title-text-container {
    text-align: right;
  }
  .react-app .smallPlayLink {
    padding: 12px;
    border-radius: 3px;
  }
  .react-app .a11y-image a.play-link {
    padding: 12px;
    border-radius: 3px;
  }
  .react-app .gradient-container {
    padding-block: 100px;
    padding-inline-start: 20px;
    padding-inline-end: 100px;
    display: inline-block;
  }
  .react-app .sim-image .gradient-container {
    padding: 100px;
  }
  .react-app .a11y-image .gradient-container {
    padding-inline-start: 100px;
    padding-inline-end: 20px;
  }
  @media (min-width: 701px) {
    .react-app .sim-image .gradient-container {
      background: radial-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.4) 31%, rgba(0, 0, 0, 0) 71%);
      margin: 80px 0;
    }
  }
  @media (max-width: 700px) {
    .react-app .sim-image .gradient-container {
      padding: 100px 20px;
      background: radial-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.4) 37%, rgba(0, 0, 0, 0) 71%);
    }
  }
  .react-app .a11y-image .gradient-container {
    background: linear-gradient(to left, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6) 185px, rgba(0, 0, 0, 0) 505px);
    transition: 0.2s;
  }
  @media (max-width: 1300px) {
    .react-app .title-text-container {
      max-width: 1300px;
    }
  }
  .react-app .smallGradientContainer {
    padding: 100px 20px;
    background: none;
    transition: 0.2s;
  }
  @media (max-width: 500px) {
    .react-app .sim-image .gradient-container,
    .react-app .a11y-image .gradient-container {
      padding: 100px 20px;
      background: none;
      transition: 0.2s;
    }
    .react-app .sim-image::before {
      filter: brightness(55%);
    }
    .react-app .a11y-image::before {
      filter: brightness(56%);
      background-position: right;
    }
  }
  @media (min-width: 501px) {
    .react-app .deib-in-stem-ed-banner .gradient-container,
    .react-app .phet-global-banner .gradient-container,
    .react-app .inclusive-design-banner .gradient-container {
      width: 460px;
    }
  }
  .react-app .teachers-image .title-text,
  .react-app .phet-global-banner .title-text,
  .react-app .deib-in-stem-ed-banner .title-text,
  .react-app .inclusive-design-banner .title-text,
  .react-app .partnerships-image .title-text {
    margin: 0;
    padding-left: 0;
    font-size: 2.4em;
    max-width: 460px;
  }
  .react-app .teachers-image .title-text-container,
  .react-app .phet-global-banner .title-text-container,
  .react-app .deib-in-stem-ed-banner .title-text-container,
  .react-app .inclusive-design-banner .title-text-container,
  .react-app .partnerships-image .title-text-container {
    text-align: left;
  }
  .react-app .teachers-image a.play-link,
  .react-app .phet-global-banner a.play-link,
  .react-app .deib-in-stem-ed-banner a.play-link,
  .react-app .inclusive-design-banner a.play-link,
  .react-app .partnerships-image a.play-link {
    padding: 12px;
    border-radius: 3px;
  }
  .react-app .teachers-image .gradient-container,
  .react-app .phet-global-banner .gradient-container,
  .react-app .deib-in-stem-ed-banner .gradient-container,
  .react-app .inclusive-design-banner .gradient-container,
  .react-app .partnerships-image .gradient-container {
    background: linear-gradient(to right, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6) 260px, rgba(0, 0, 0, 0) 580px);
    transition: 0.2s;
  }
  @media (max-width: 500px) {
    .react-app .teachers-image .gradient-container,
    .react-app .phet-global-banner .gradient-container,
    .react-app .deib-in-stem-ed-banner .gradient-container,
    .react-app .inclusive-design-banner .gradient-container,
    .react-app .partnerships-image .gradient-container {
      padding: 100px 20px;
      background: none;
      transition: 0.2s;
    }
    .react-app .teachers-image::before,
    .react-app .phet-global-banner::before,
    .react-app .deib-in-stem-ed-banner::before,
    .react-app .inclusive-design-banner::before,
    .react-app .partnerships-image::before {
      filter: brightness(40%);
      background-position: right;
    }
  }
  .react-app .initiatives .initiatives-panel {
    max-width: 850px;
    margin-inline: auto;
    padding-inline: 20px;
    padding-block: 40px;
  }
  .react-app .initiatives .initiatives-panel .h2,
  .react-app .initiatives .initiatives-panel .h3,
  .react-app .initiatives .initiatives-panel .h4 {
    padding-bottom: 20px;
  }
  .react-app .initiatives .section {
    max-width: 850px;
    padding-bottom: 96px;
    display: flex;
    row-gap: 16px;
    gap: 16px;
    flex-wrap: wrap;
  }
  .react-app .initiatives .section .fellow-p {
    padding-inline-start: 20px;
    padding-block-start: 5px;
  }
  .react-app .initiatives .section .fellow-p-block {
    width: 100%;
    padding-bottom: 10px;
  }
  .react-app .initiatives .section .commitment-minor-section {
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: 15px;
  }
  .react-app .initiatives .section .commitment-minor-section .commitmentIcon {
    padding-top: 5px;
    width: 60px;
  }
  .react-app .initiatives .section .commitment-minor-section .col1 {
    grid-column: 1 / 2;
  }
  @media (max-width: 700px) {
    .react-app .initiatives .section .commitment-minor-section .col1 {
      justify-self: center;
    }
  }
  @media (min-width: 701px) {
    .react-app .initiatives .section .commitment-minor-section .col1 {
      grid-row: 1 / 3;
    }
  }
  @media (max-width: 700px) {
    .react-app .initiatives .section .commitment-minor-section .col2 {
      grid-column: 1 / 2;
    }
  }
  @media (min-width: 701px) {
    .react-app .initiatives .section .commitment-minor-section .col2 {
      grid-column: 2 / 3;
    }
  }
  .react-app .initiatives .eggplant-button {
    display: inline-block;
  }
  .react-app .initiatives .teamMemberList {
    display: flex;
    column-gap: 18px;
    row-gap: 36px;
    flex-wrap: wrap;
    justify-content: center;
  }
  .react-app .initiatives .teamMemberList .teamMember {
    display: grid;
    grid-template-areas: 'photo';
    width: 155px;
    grid-template-rows: 155px auto auto auto 1fr;
  }
  .react-app .initiatives .teamMemberList .teamMember .teamMemberPhoto {
    height: 150px;
    width: 150px;
    object-fit: cover;
    border-radius: 75px;
    grid-area: photo;
  }
  .react-app .initiatives .teamMemberList .teamMember .teamMemberFlag {
    align-self: end;
    justify-self: end;
    border-radius: 3px;
    grid-area: photo;
  }
  .react-app .initiatives .teamMemberList .teamMember .teamMemberName {
    font-weight: bold;
  }
  .react-app .tab-navigation .film-strip {
    border-bottom: 1px solid grey;
  }
  .react-app .tab-navigation .film-strip .scroll-button-container {
    width: 60px;
  }
  .ltr .react-app .tab-navigation .film-strip .tab-list .tab:first-child {
    margin-left: auto;
  }
  .ltr .react-app .tab-navigation .film-strip .tab-list .tab:last-child {
    margin-right: auto;
  }
  .rtl .react-app .tab-navigation .film-strip .tab-list .tab:first-child {
    margin-right: auto;
  }
  .rtl .react-app .tab-navigation .film-strip .tab-list .tab:last-child {
    margin-left: auto;
  }
  .react-app .tab-navigation .film-strip .tab-list .tab-button {
    white-space: nowrap;
    margin: 4px 20px 0 20px;
  }
  .react-app .phetCard {
    display: grid;
    justify-content: start;
    justify-items: start;
    gap: 15px;
  }
  @media (max-width: 600px) {
    .react-app .phetCard {
      grid-template-areas: "title" "img" "p";
    }
  }
  @media (min-width: 601px) {
    .react-app .phetCard {
      grid-template-areas: "title title" "img p";
    }
  }
  .react-app .phetCard .title {
    grid-area: title;
  }
  .react-app .phetCard .p {
    grid-area: p;
  }
  .react-app .phetCard .img {
    grid-area: img;
    width: 300px;
  }
  .react-app .phetCard .eggplant-button {
    font-weight: 400;
    display: inline;
  }
  .react-app .phetCard .android-badge {
    display: block;
    margin-inline-start: -12px;
  }
  .react-app .phetDropdown {
    position: relative;
    border: 1px solid black;
    border-radius: 5px;
  }
  .react-app .phetDropdown .phetLabel {
    padding: 5px;
  }
  .react-app .phetDropdown .phetSelect {
    border: 1px solid transparent;
    border-radius: 5px;
    -webkit-appearance: unset;
    padding-inline-end: 30px;
    background: transparent;
    height: unset;
    padding-top: 10px;
    padding-bottom: 10px;
    margin: 0;
  }
  .react-app .phetDropdown .fa-chevron-down {
    position: absolute;
    top: 10px;
    z-index: -1;
  }
  .ltr .react-app .phetDropdown .fa-chevron-down {
    right: 5px;
  }
  .rtl .react-app .phetDropdown .fa-chevron-down {
    left: 5px;
  }
  .react-app .play-button {
    grid-area: playButton;
    position: relative;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    grid-template-rows: auto;
    margin: 0;
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font-weight: 300;
  }
  .react-app .play-button .play-or-download-image {
    z-index: 40;
    grid-column: 2 / 3;
    grid-row: 1 / 2;
    align-self: center;
    justify-self: center;
  }
  .react-app .play-button:focus .play-or-download-image,
  .react-app .play-button:hover .play-or-download-image {
    filter: drop-shadow(0 0 16px white) brightness(2);
  }
  .react-app .play-button .screenshotHeight {
    max-height: 325px;
  }
  .react-app .play-button .main-screenshot {
    object-fit: contain;
    z-index: 30;
    width: 100%;
    max-height: 325px;
    grid-column: 2 / 3;
    grid-row: 1 / 2;
  }
  @media (min-width: 516px) {
    .react-app .play-button .main-screenshot {
      width: 495px;
    }
  }
  .react-app .play-button .new-sash,
  .react-app .play-button .corner-icon {
    grid-column: 2 / 3;
    grid-row: 1 / 2;
    z-index: 40;
    width: 140px;
    height: 140px;
  }
  .ltr .react-app .play-button .new-sash,
  .ltr .react-app .play-button .corner-icon {
    justify-self: self-end;
  }
  .rtl .react-app .play-button .new-sash,
  .rtl .react-app .play-button .corner-icon {
    justify-self: self-start;
  }
  .react-app .play-button .background {
    filter: blur(8px);
    opacity: 70%;
    object-fit: cover;
    z-index: 10;
    max-height: 325px;
    grid-column: 1 / 4;
    grid-row: 1 / 2;
    align-self: center;
    justify-self: stretch;
  }
  @media (max-width: 535px) {
    .react-app .play-button .background {
      display: none;
    }
  }
  .react-app .play-button::before {
    content: "";
    background: rgba(242, 242, 242, 0.3);
    z-index: 20;
    grid-column: 1 / 4;
    grid-row: 1 / 2;
  }
  .react-app .play-button.gray-background {
    background: #d2d2d2;
  }
  .react-app .quote-list {
    max-width: 1300px;
    margin: auto;
    display: flex;
    justify-content: space-evenly;
    flex-wrap: wrap;
  }
  .react-app .quote-list .quote-item {
    display: flex;
    align-items: start;
    padding: 60px 40px;
    box-sizing: border-box;
  }
  .react-app .quote-list .quote-item img {
    width: 30px;
    margin-inline-end: 20px;
  }
  .rtl .react-app .quote-list .quote-item img {
    transform: scaleX(-1);
  }
  .react-app .quote-list .quote-item .quote {
    font-size: 1.125em;
  }
  .react-app .quote-list .quote-item .attribution {
    margin-top: 20px;
    font-size: 0.875em;
  }
  .react-app .supporter-callout {
    max-width: 300px;
    margin: auto;
  }
  .react-app .supporter-callout .supported-by {
    font-size: 1.2em;
    margin: 50px 0 26px 0;
    text-align: center;
  }
  .react-app .supporter-callout .other-supporters {
    font-size: 1em;
    font-weight: 300;
    max-width: 220px;
    margin: 26px auto 16px auto;
  }
  .react-app .supporter-callout .random-supporter img {
    max-width: 200px;
    max-height: 100px;
    display: block;
    margin: 0 auto;
  }
  .react-app .supporter-callout .random-supporter img.greyscale {
    filter: grayscale(100%);
  }
  .react-app .supporter-callout .random-supporter a:focus img {
    outline: 2px solid grey;
  }
  .react-app .supporter-callout .random-supporter span.random-supporter-text {
    font-weight: 300;
  }
  @media (max-width: 826px) {
    .react-app input.react-autosuggest__input {
      width: 285px;
    }
    .react-app div.add-school-button {
      margin: 10px 0;
    }
  }
  @media (min-width: 827px) {
    .react-app div.react-autosuggest__container {
      position: relative;
    }
    .react-app div.react-autosuggest__suggestions-container {
      position: absolute;
      top: 27px;
      left: 0;
      width: 600px;
    }
    .react-app input.react-autosuggest__input {
      width: 400px;
    }
    .react-app ul.react-autosuggest__suggestions-list {
      max-height: 200px;
      overflow-y: scroll;
    }
    .react-app div.add-school-button {
      margin: 0 10px;
    }
  }
  .react-app li.react-autosuggest__suggestion--highlighted {
    background: lightblue;
  }
  .react-app li.react-autosuggest__suggestion {
    padding: 5px;
  }
  .react-app ul.react-autosuggest__suggestions-list {
    list-style-type: none;
    padding: 5px;
    margin: 0;
    border: 1px solid black;
    background: aliceblue;
  }
  .react-app input.react-autosuggest__input {
    font-size: inherit;
    padding: 5px;
  }
  .react-app div.autosuggest_secondary_text {
    color: grey;
    padding: 0 5px;
  }
  .react-app .smallTileScaling {
    transform: scale(0.75);
    transform-origin: left top;
    margin: 0;
  }
  .react-app .smallLiScaling {
    height: 170.25px;
    width: 159px;
  }
  .react-app .film-strip .sim-collection li {
    margin: 20px 10px;
  }
  @media (max-width: 1300px) {
    .react-app .film-strip .sim-collection li {
      height: 170.25px;
      width: 159px;
    }
  }
  @media (min-width: 450px) {
    .ltr .react-app .film-strip .sim-collection li:first-child {
      padding-left: 35px;
    }
    .rtl .react-app .film-strip .sim-collection li:first-child {
      padding-right: 35px;
    }
  }
  .ltr .react-app .film-strip .sim-collection li:last-child {
    padding-right: 35px;
  }
  .rtl .react-app .film-strip .sim-collection li:last-child {
    padding-left: 35px;
  }
  @media (max-width: 503px) {
    .react-app .grid.sim-collection li {
      height: 170.25px;
      width: 159px;
      margin: 15px 2px;
    }
  }
  .react-app .tile {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: black;
    overflow: hidden;
  }
  .react-app .tile.grid,
  .react-app .tile.strip {
    border: 1px solid #d2d2d2;
    border-radius: 10px;
    width: 210px;
  }
  .react-app .tile.grid .a11y-badges,
  .react-app .tile.strip .a11y-badges {
    border-left: 1px solid #d2d2d2;
  }
  .react-app .tile.grid .information,
  .react-app .tile.strip .information {
    border-top: 1px solid #d2d2d2;
    height: 85px;
  }
  .react-app .tile.grid .thumbnail,
  .react-app .tile.strip .thumbnail {
    width: 210px;
    height: 140px;
  }
  @media (max-width: 796px) {
    .react-app .tile.grid {
      margin: 20px 10px;
    }
  }
  @media (min-width: 797px) {
    .react-app .tile.grid {
      margin: 20px;
    }
  }
  .react-app .tile.strip {
    margin: 0;
  }
  .react-app .tile.list {
    border-bottom: 1px solid #d2d2d2;
    box-sizing: border-box;
    margin: 0 0 0 20px;
    max-width: 974px;
  }
  @media (min-width: 504px) {
    .react-app .tile.list {
      width: calc(100% - 20px);
    }
  }
  @media (max-width: 503px) {
    .react-app .tile.list {
      margin: 0 !important;
    }
  }
  li:last-child .react-app .tile.list {
    border-bottom: none;
  }
  .react-app .tile.list .a11y-badges {
    border-right: 1px solid #d2d2d2;
    margin-right: 3px;
    padding-right: 3px;
  }
  .react-app .tile.list .information {
    height: auto;
    flex-direction: row;
    padding: 10px 3px;
    align-items: center;
  }
  .react-app .tile.list .information .icons {
    flex-direction: row-reverse;
  }
  .react-app .tile.list .information .icons .badge-holder {
    height: 20px;
  }
  .react-app .tile.list .information .icons .a11y-badges {
    flex-direction: row-reverse;
  }
  @media (max-width: 1300px) {
    .react-app .tile.strip {
      transform: scale(0.75);
      transform-origin: left top;
      margin: 0;
    }
  }
  @media (max-width: 503px) {
    .react-app .tile.grid {
      transform: scale(0.75);
      transform-origin: left top;
      margin: 0;
    }
  }
  .react-app .tile .information {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: start;
    width: 100%;
    box-sizing: border-box;
    padding: 0 10px 10px;
  }
  .react-app .tile .information .icons {
    display: flex;
  }
  .react-app .tile .information .icons .a11y-badges {
    display: flex;
    margin-left: 7px;
  }
  .react-app .tile .information .icons .a11y-badges .badge-holder {
    padding-left: 7px;
  }
  .react-app .tile .information .icons .badge {
    height: 20px;
    width: 20px;
  }
  .react-app .tile .information .title-holder {
    padding-top: 5px;
    padding-bottom: 5px;
    display: flex;
    flex-grow: 1;
    align-items: center;
    column-gap: 8px;
    flex-wrap: wrap;
    row-gap: 4px;
  }
  .react-app .tile .information .title-holder .title {
    font-size: 1em;
    margin: 0;
    font-weight: normal;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .react-app .tile .information .title-holder .new-sash-list {
    height: 20px;
  }
  .react-app .tile:hover,
  .react-app .tile:focus {
    box-shadow: 0 0 6px 2px #d2d2d2;
  }
  .react-app .tile:hover .title,
  .react-app .tile:focus .title {
    color: #e01e5a;
  }
  .react-app .tile .image-holder {
    position: relative;
  }
  .react-app .tile .image-holder .new-sash {
    position: absolute;
    height: 65px;
    width: 65px;
    top: 0;
    right: 0;
  }
  .react-app .tile .image-holder .corner-icon {
    position: absolute;
    height: 65px;
    width: 65px;
    top: 0;
    right: 0;
  }
  .react-app .tile .thumbnail {
    display: block;
  }
  .react-app .tile .thumbnail.placeholder {
    position: absolute;
    z-index: -1;
  }
  .react-app .tile .thumbnail.opaque {
    opacity: 1;
    transition: 0.3s opacity;
  }
  .react-app .tile .thumbnail.transparent {
    opacity: 0;
    transition: 0.3s opacity;
  }
  .react-app .sortable-table-overlay {
    position: relative;
    overflow: auto;
  }
  .react-app .sortable-table-overlay .gradient-common {
    content: '';
    position: absolute;
    width: 60px;
    height: 100%;
    top: 0;
  }
  .react-app .sortable-table-overlay.show-left-gradient::before {
    background: linear-gradient(to right, white 5%, rgba(255, 255, 255, 0));
    left: 0;
    content: '';
    position: absolute;
    width: 60px;
    height: 100%;
    top: 0;
  }
  .react-app .sortable-table-overlay.show-right-gradient::after {
    background: linear-gradient(to left, white 5%, rgba(255, 255, 255, 0));
    right: 0;
    content: '';
    position: absolute;
    width: 60px;
    height: 100%;
    top: 0;
  }
  .react-app .sortable-table {
    overflow-x: auto;
    display: block;
    border-collapse: collapse;
    max-width: 1250px;
  }
  .react-app .sortable-table .activities-phet-logo {
    height: 15px;
  }
  .ltr .react-app .sortable-table .activities-phet-logo {
    margin-right: 3px;
  }
  .rtl .react-app .sortable-table .activities-phet-logo {
    margin-left: 3px;
  }
  .react-app .sortable-table .tr {
    border-left: 1px solid gray;
    border-right: 1px solid gray;
    border-bottom: 1px solid gray;
  }
  .react-app .sortable-table .tr .th {
    background-color: rgb(82, 23, 100);
    color: white;
    padding: 5px 10px;
    white-space: nowrap;
    text-transform: uppercase;
    text-align: start;
  }
  .react-app .sortable-table .tr .th .sortable-button {
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font-weight: 300;
    width: 100%;
    height: 100%;
    color: inherit;
    text-align: inherit;
    text-transform: inherit;
    font-weight: inherit;
  }
  .react-app .sortable-table .tr .th .fa {
    padding: 0 5px;
  }
  .react-app .sortable-table .td {
    padding: 10px 5px;
  }
  .react-app .sortable-table .td:nth-child(even) {
    background-color: rgba(82, 23, 100, 0.05);
  }
  .react-app .spinner {
    margin-inline: auto;
    padding-block: 40vh;
    width: 70px;
    text-align: center;
  }
  .react-app .spinner > div {
    width: 18px;
    height: 18px;
    background-color: #6acef5;
    border-radius: 100%;
    display: inline-block;
    -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
    animation: sk-bouncedelay 1.4s infinite ease-in-out both;
  }
  .react-app .spinner .bounce1 {
    -webkit-animation-delay: -0.32s;
    animation-delay: -0.32s;
  }
  .react-app .spinner .bounce2 {
    -webkit-animation-delay: -0.16s;
    animation-delay: -0.16s;
  }
  @-webkit-keyframes sk-bouncedelay {
    0%,
    80%,
    100% {
      -webkit-transform: scale(0);
    }
    40% {
      -webkit-transform: scale(1);
    }
  }
  @keyframes sk-bouncedelay {
    0%,
    80%,
    100% {
      -webkit-transform: scale(0);
      transform: scale(0);
    }
    40% {
      -webkit-transform: scale(1);
      transform: scale(1);
    }
  }
  .react-app .subject-links {
    max-width: 1300px;
    display: flex;
    flex-flow: row wrap;
    margin: 40px auto;
  }
  .react-app .subject-links .earth-science .text {
    margin: 0 auto 5px;
    padding-top: 22px;
  }
  .react-app .subject-links .subject-wrapper {
    width: 161px;
    height: 161px;
    position: relative;
    margin: auto;
    cursor: default;
    text-decoration: none;
    color: black;
    display: block;
  }
  .react-app .subject-links .subject-wrapper:before {
    content: '';
    position: absolute;
    left: 5px;
    top: 5px;
    width: 111px;
    height: 111px;
    padding: 20px;
    margin: 0;
    border-radius: 22px;
    transition: 0.2s linear, outline 0s;
  }
  .react-app .subject-links .subject-wrapper:hover:before,
  .react-app .subject-links .subject-wrapper:focus:before {
    filter: brightness(1.03);
    cursor: pointer;
    left: 0;
    top: 0;
    width: 121px;
    height: 121px;
    border-radius: 80px;
    transition: 0.2s linear;
  }
  .react-app .subject-links .subject-wrapper:focus {
    outline: 2px solid grey;
  }
  .react-app .subject-links .subject-wrapper .text {
    margin: 0 auto 15px;
    padding-top: 65px;
    max-width: 111px;
    font-size: 27px;
    word-break: break-word;
    text-transform: uppercase;
    transition: 0.2s linear;
    position: relative;
    text-align: center;
  }
  .react-app .subject-links .subject-wrapper .text:hover {
    cursor: pointer;
  }
  .react-app .subject-links .subject-wrapper .subject-icon {
    margin: 0 auto;
    width: 58px;
    display: block;
    position: relative;
  }
  .react-app .subject-links .subject-wrapper .subject-icon:hover {
    cursor: pointer;
  }
  .react-app .subject-links .subject-wrapper.physics:before {
    background: #1f9cf547;
  }
  .react-app .subject-links .subject-wrapper.chemistry:before {
    background: #279ef378;
  }
  .react-app .subject-links .subject-wrapper.math:before {
    background: #51a2dca4;
  }
  .react-app .subject-links .subject-wrapper.earth-science:before {
    background: #279ef378;
  }
  .react-app .subject-links .subject-wrapper.biology:before {
    background: #1f9cf547;
  }
  .react-app .tooltip-container .tooltip {
    position: absolute;
    background: white;
    border: 1px solid black;
    border-radius: 3px;
    width: 200px;
    padding: 10px;
    z-index: 10;
    opacity: 0;
    left: -10000px;
  }
  .react-app .tooltip-container:hover .tooltip {
    opacity: 1;
    left: 0;
    transition: opacity 0.2s, left 0s;
    transition-delay: 0.1s;
  }
  .react-app div.schools.admin th,
  .react-app div.schools.admin td {
    border: 1px solid black;
    text-align: left;
    min-width: 20px;
    padding: 5px;
  }
  .react-app div.schools.admin th.icon,
  .react-app div.schools.admin td.icon {
    border: none;
    text-align: center;
  }
  .react-app div.schools.admin td.icon:hover {
    cursor: pointer;
  }
  .react-app div.schools.admin tbody tr {
    border: 1px solid black;
  }
  .react-app div.schools.admin table.search-results {
    border-collapse: collapse;
    min-width: 1400px;
    margin: 5px;
  }
  .react-app div.schools.admin tr.school.table-row.invalid {
    background: lightpink;
  }
  .react-app div.schools.admin tr.school.table-row.nces {
    background: lightgreen;
  }
  .react-app div.schools.admin tr.school.table-row.replaced {
    background: lightgray;
    text-decoration: line-through;
  }
  .react-app div.schools.admin tr.school.table-row.valid {
    background: lightcyan;
  }
  .react-app .admin-button {
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font-weight: 300;
  }
  .react-app .admin-users {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin: 50px;
  }
  .react-app .admin-users .h2 {
    padding-top: 20px;
  }
  .react-app .admin-users .admin-label {
    display: flex;
    gap: 10px;
  }
  .react-app .admin-users .team-list {
    display: flex;
    flex-direction: column;
    gap: 5px;
  }
  .react-app .inclusiveDesignAdminPage,
  .react-app .teamMembersAdminPage,
  .react-app .supportersAdminPage {
    padding: 20px;
    max-width: 1300px;
    margin: auto;
  }
  .react-app .inclusiveDesignAdminPage .section,
  .react-app .teamMembersAdminPage .section,
  .react-app .supportersAdminPage .section {
    margin-top: 20px;
    margin-bottom: 30px;
  }
  .react-app .inclusiveDesignAdminPage .create-button,
  .react-app .teamMembersAdminPage .create-button,
  .react-app .supportersAdminPage .create-button {
    margin-top: 10px;
  }
  .react-app .inclusiveDesignAdminPage .adminTableData,
  .react-app .teamMembersAdminPage .adminTableData,
  .react-app .supportersAdminPage .adminTableData {
    width: 100%;
    margin: 20px auto;
    border: 1px solid black;
    border-collapse: collapse;
  }
  .react-app .inclusiveDesignAdminPage .adminTableData .team-photo,
  .react-app .teamMembersAdminPage .adminTableData .team-photo,
  .react-app .supportersAdminPage .adminTableData .team-photo {
    width: 20px;
  }
  .react-app .inclusiveDesignAdminPage .adminTableData button,
  .react-app .teamMembersAdminPage .adminTableData button,
  .react-app .supportersAdminPage .adminTableData button {
    background: none;
    border: none;
    padding: 0 5px;
    display: block;
    cursor: pointer;
    line-height: 18px;
  }
  .react-app .inclusiveDesignAdminPage .adminTableData td,
  .react-app .teamMembersAdminPage .adminTableData td,
  .react-app .supportersAdminPage .adminTableData td,
  .react-app .inclusiveDesignAdminPage .adminTableData th,
  .react-app .teamMembersAdminPage .adminTableData th,
  .react-app .supportersAdminPage .adminTableData th {
    padding: 10px 2px !important;
    border: 1px solid lightgrey;
    text-align: left;
  }
  .react-app .inclusiveDesignAdminPage .adminTableData td.visibility-td,
  .react-app .teamMembersAdminPage .adminTableData td.visibility-td,
  .react-app .supportersAdminPage .adminTableData td.visibility-td,
  .react-app .inclusiveDesignAdminPage .adminTableData th.visibility-td,
  .react-app .teamMembersAdminPage .adminTableData th.visibility-td,
  .react-app .supportersAdminPage .adminTableData th.visibility-td {
    text-align: center;
  }
  .react-app .inclusiveDesignAdminPage .adminTableData td.visibility-td .fa-eye-slash,
  .react-app .teamMembersAdminPage .adminTableData td.visibility-td .fa-eye-slash,
  .react-app .supportersAdminPage .adminTableData td.visibility-td .fa-eye-slash,
  .react-app .inclusiveDesignAdminPage .adminTableData th.visibility-td .fa-eye-slash,
  .react-app .teamMembersAdminPage .adminTableData th.visibility-td .fa-eye-slash,
  .react-app .supportersAdminPage .adminTableData th.visibility-td .fa-eye-slash {
    color: grey;
  }
  .react-app .inclusiveDesignAdminPage .adminTableData .last td,
  .react-app .teamMembersAdminPage .adminTableData .last td,
  .react-app .supportersAdminPage .adminTableData .last td {
    border-bottom: 3px solid black;
  }
  .react-app .inclusiveDesignAdminPage .adminTableData .last-reverse td,
  .react-app .teamMembersAdminPage .adminTableData .last-reverse td,
  .react-app .supportersAdminPage .adminTableData .last-reverse td {
    border-top: 3px solid black;
  }
  .react-app .inclusiveDesignAdminPage .adminTableData .td,
  .react-app .teamMembersAdminPage .adminTableData .td,
  .react-app .supportersAdminPage .adminTableData .td {
    height: 1.1em;
    overflow: hidden;
  }
  .react-app .inclusiveDesignAdminPage .adminTableData .preview,
  .react-app .teamMembersAdminPage .adminTableData .preview,
  .react-app .supportersAdminPage .adminTableData .preview {
    max-height: 20px;
    max-width: 40px;
  }
  .react-app .inclusiveDesignAdminPage .p,
  .react-app .teamMembersAdminPage .p,
  .react-app .supportersAdminPage .p {
    margin: 10px 0;
  }
  .react-app .inclusiveDesignAdminPage .p.warning,
  .react-app .teamMembersAdminPage .p.warning,
  .react-app .supportersAdminPage .p.warning {
    color: red;
  }
  .react-app .source-code-page .container {
    margin-bottom: 50px;
  }
  .react-app .source-code-page .section {
    margin-inline: auto;
    max-width: 850px;
    padding-bottom: 96px;
    display: flex;
    row-gap: 16px;
    flex-direction: column;
    padding-inline: 20px;
  }
  .react-app .source-code-page .ul {
    margin-block: 5px;
    padding-inline-start: 40px;
    list-style-type: disc;
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  .react-app .source-code-page .bold {
    margin-inline-end: 5px;
  }
  .react-app .teamMember-linkList {
    display: flex;
    gap: 4px;
    font-size: 20px;
  }
  .react-app .teamMember-linkList .fa {
    color: #666;
  }
  .react-app .teamMember-linkList .fa:hover {
    color: black;
  }
  .react-app .about-team-page .ul,
  .react-app .about-team-page .h2,
  .react-app .about-team-page .h3 {
    max-width: 1300px;
    margin: auto;
    padding-inline: 20px;
  }
  .react-app .about-team-page .ul {
    margin-bottom: 60px;
  }
  .react-app .about-team-page .h2,
  .react-app .about-team-page .h3 {
    margin-bottom: 20px;
  }
  .react-app .about-team-page .bullet {
    padding-inline: 0.25em;
  }
  .react-app .about-team-page .contact-link:last-child .bullet {
    display: none;
  }
  .react-app .about-team-page .photo {
    width: 310px;
    grid-area: photo;
  }
  @media (max-width: 679px) {
    .react-app .about-team-page .photo {
      align-self: center;
    }
  }
  .react-app .about-team-page .name {
    font-size: 1.2em;
    grid-area: name;
  }
  .react-app .about-team-page .title {
    text-transform: uppercase;
    font-weight: bold;
    grid-area: title;
  }
  .react-app .about-team-page .bio {
    grid-area: bio;
    margin-top: 5px;
    max-width: 850px;
  }
  .react-app .about-team-page .links {
    grid-area: links;
  }
  .react-app .about-team-page .keywords {
    text-transform: uppercase;
    display: flex;
    flex-wrap: wrap;
  }
  .react-app .about-team-page .directorList {
    display: flex;
    flex-direction: column;
    gap: 30px;
    padding-top: 40px;
  }
  .react-app .about-team-page .directorList .directorMember {
    row-gap: 5px;
    column-gap: 30px;
  }
  @media (min-width: 680px) {
    .react-app .about-team-page .directorList .directorMember {
      display: grid;
      grid-template-areas: 'photo name' 'photo title' 'photo bio' 'photo links';
      grid-template-rows: auto auto auto 1fr;
      grid-template-columns: auto 1fr;
    }
  }
  @media (max-width: 679px) {
    .react-app .about-team-page .directorList .directorMember {
      display: flex;
      flex-direction: column;
    }
  }
  .react-app .about-team-page .teamMemberList,
  .react-app .about-team-page .undergradAssistantList,
  .react-app .about-team-page .communitySupportersList {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
  }
  .react-app .about-team-page .teamMemberList .teamMemberMember,
  .react-app .about-team-page .undergradAssistantList .teamMemberMember,
  .react-app .about-team-page .communitySupportersList .teamMemberMember,
  .react-app .about-team-page .teamMemberList .undergradAssistantMember,
  .react-app .about-team-page .undergradAssistantList .undergradAssistantMember,
  .react-app .about-team-page .communitySupportersList .undergradAssistantMember,
  .react-app .about-team-page .teamMemberList .communitySupportersMember,
  .react-app .about-team-page .undergradAssistantList .communitySupportersMember,
  .react-app .about-team-page .communitySupportersList .communitySupportersMember {
    display: flex;
    flex-direction: column;
    gap: 5px;
  }
  @media (min-width: 680px) {
    .react-app .about-team-page .teamMemberList .teamMemberMember,
    .react-app .about-team-page .undergradAssistantList .teamMemberMember,
    .react-app .about-team-page .communitySupportersList .teamMemberMember,
    .react-app .about-team-page .teamMemberList .undergradAssistantMember,
    .react-app .about-team-page .undergradAssistantList .undergradAssistantMember,
    .react-app .about-team-page .communitySupportersList .undergradAssistantMember,
    .react-app .about-team-page .teamMemberList .communitySupportersMember,
    .react-app .about-team-page .undergradAssistantList .communitySupportersMember,
    .react-app .about-team-page .communitySupportersList .communitySupportersMember {
      width: 310px;
    }
  }
  .react-app .about-team-page .consultantContractorList,
  .react-app .about-team-page .collaboratorList,
  .react-app .about-team-page .cuOfficeList {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }
  .react-app .app-for-schools .sectionPadding {
    padding: 0 15px;
  }
  .react-app .app-for-schools .quote-list {
    padding: 0 15px;
  }
  @media (min-width: 1200px) {
    .react-app .app-for-schools .quote-list {
      justify-content: space-between;
    }
    .react-app .app-for-schools .quote-list .quote-item {
      flex: 1;
    }
  }
  @media (max-width: 1199px) {
    .react-app .app-for-schools .quote-list {
      justify-content: start;
    }
  }
  .react-app .app-for-schools .quote-list,
  .react-app .app-for-schools .app-features {
    max-width: 1300px;
    margin: auto;
    padding: 0 15px;
  }
  .react-app .app-for-schools .individual-apps::before {
    content: "";
    background-image: url("/assets/img/footer_banner_image.gif");
  }
  .react-app .app-for-schools .individual-apps .h3 {
    font-size: 1.1em;
  }
  .react-app .app-for-schools .individual-apps .title-text-container {
    text-align: right;
    max-width: 1300px;
    margin: auto;
    padding: 0 15px;
  }
  .react-app .app-for-schools .individual-apps .title-text-container .gradient-container {
    display: inline-block;
    text-align: center;
  }
  @media (min-width: 800px) {
    .react-app .app-for-schools .individual-apps .title-text-container .gradient-container {
      padding: 0 100px 400px 100px;
    }
  }
  @media (max-width: 799px) {
    .react-app .app-for-schools .individual-apps .title-text-container .gradient-container {
      padding: 0 30px 400px 30px;
    }
  }
  .react-app .app-for-schools .individual-apps .app-store-container {
    display: flex;
    justify-content: space-around;
  }
  .react-app .app-for-schools .h2 {
    text-align: center;
    padding: 40px 20px 20px 20px;
  }
  .react-app .app-for-schools .app-features {
    display: flex;
    justify-content: space-evenly;
    flex-wrap: wrap;
    margin-bottom: 20px;
  }
  .react-app .app-for-schools .app-features .app-feature {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 20px;
    width: 130px;
    text-align: center;
  }
  .react-app .app-for-schools .app-features .app-feature .app-feature-image {
    max-width: 60px;
    height: 100px;
  }
  .react-app .app-for-schools .school-purchases {
    max-width: 850px;
    padding: 0 50px;
    margin: auto;
  }
  .react-app .app-for-schools .school-purchases .chromeos .chromebook-logo {
    height: 100px;
    display: block;
    margin: auto;
  }
  .react-app .app-for-schools .school-purchases .ios .ios-logo {
    height: 50px;
    padding: 50px 0 20px 0;
    margin: auto;
    display: block;
  }
  .react-app .cookie-policy-page .section {
    max-width: 1250px;
    margin-inline: auto;
    display: flex;
    flex-direction: column;
    padding-inline: 20px;
    padding-bottom: 96px;
  }
  .react-app .cookie-policy-page .section .text-area {
    max-width: 850px;
    margin-inline: auto;
    display: flex;
    flex-direction: column;
    row-gap: 16px;
  }
  .react-app .cookie-policy-page .section .text-area .opening-paragraph {
    padding-top: 40px;
  }
  .react-app .cookie-policy-page .section .text-area .opening-paragraph-end {
    padding-bottom: 40px;
  }
  .react-app .cookie-policy-page .section .sortable-table {
    padding-top: 16px;
  }
  .react-app .cookie-policy-page .section .sortable-table .td:first-child {
    white-space: nowrap;
  }
  .react-app .deib-in-stem-ed .deib-in-stem-ed-banner::before {
    content: "";
    background-image: url("/assets/img/deib-in-stem-ed-banner.jpeg");
  }
  .react-app .deib-in-stem-ed .framework-minor-section {
    display: flex;
    gap: 16px;
    padding-bottom: 16px;
  }
  .react-app .deib-in-stem-ed .framework-minor-section .frameworkIcon {
    height: 50px;
  }
  .react-app .deib-in-stem-ed .equity-framework-img {
    max-width: 400px;
    width: 100%;
    padding-top: 16px;
    margin: auto;
    display: block;
  }
  @media (min-width: 701px) {
    .react-app .deib-in-stem-ed .commitment-panel {
      display: grid;
      grid-template-areas: 'commitment commitment' 'donor support';
      grid-template-columns: 1fr 1fr;
    }
  }
  .react-app .deib-in-stem-ed .commitment-panel .donor-section {
    flex-direction: column;
  }
  .react-app .deib-in-stem-ed .commitment-panel .donor-section .donor-image {
    width: 300px;
    align-self: center;
    margin-bottom: 20px;
  }
  .react-app .deib-in-stem-ed .commitment-panel .section.donor-section {
    grid-area: donor;
  }
  @media (max-width: 700px) {
    .react-app .deib-in-stem-ed .commitment-panel .section.donor-section {
      text-align: center;
    }
  }
  .react-app .deib-in-stem-ed .commitment-panel .section.support-section {
    grid-area: support;
    display: grid;
    column-gap: 10px;
    text-align: center;
    justify-items: center;
    align-content: start;
  }
  .react-app .deib-in-stem-ed .commitment-panel .section.support-section .eggplant-button {
    grid-row: 3 / 4;
  }
  .react-app .deib-in-stem-ed .commitment-panel .section.support-section .h2 {
    grid-row: 1 / 2;
    grid-column: 1 / 3;
  }
  .react-app .deib-in-stem-ed .commitment-panel .section.support-section .p {
    grid-row: 2 / 3;
    grid-column: 1 / 3;
  }
  .react-app .deib-in-stem-ed .section.commitment-section {
    grid-area: commitment;
  }
  .react-app .deib-in-stem-ed .programs-panel .minor-section {
    padding-top: 40px;
  }
  .react-app .deib-in-stem-ed .programs-panel .programs-map {
    width: 100%;
  }
  .react-app .deib-in-stem-ed .programs-panel .programs-image {
    padding-top: 30px;
  }
  .react-app .deib-in-stem-ed .programs-panel .programs-image.chart {
    max-width: 750px;
  }
  .react-app .deib-in-stem-ed .programs-panel .middle-text {
    padding-top: 20px;
  }
  .react-app .deib-in-stem-ed .programs-panel .chart-container {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .rtl .react-app .deib-in-stem-ed .programs-panel {
    text-anchor: end;
  }
  .react-app .deib-in-stem-ed .programs-panel .where-we-work .st0 {
    fill: #FFFFFF;
  }
  .react-app .deib-in-stem-ed .programs-panel .where-we-work .st1 {
    fill: #B995C1;
  }
  .react-app .deib-in-stem-ed .programs-panel .where-we-work .st2 {
    fill: #521764;
  }
  .react-app .deib-in-stem-ed .programs-panel .where-we-work .st3 {
    fill: #743F89;
  }
  .react-app .deib-in-stem-ed .programs-panel .where-we-work .st4 {
    fill: none;
    stroke: #757575;
    stroke-miterlimit: 10;
  }
  .react-app .deib-in-stem-ed .programs-panel .where-we-work .st5 {
    fill: #9E9E9E;
  }
  .react-app .deib-in-stem-ed .programs-panel .where-we-work .st6 {
    font-family: 'Roboto', sans-serif;
  }
  .react-app .deib-in-stem-ed .programs-panel .where-we-work .st7 {
    font-size: 18px;
  }
  .react-app .deib-in-stem-ed .programs-panel .who-we-work-with .st0 {
    fill: #FFFFFF;
  }
  .react-app .deib-in-stem-ed .programs-panel .who-we-work-with .st1 {
    fill: #D9C7DD;
  }
  .react-app .deib-in-stem-ed .programs-panel .who-we-work-with .st2 {
    fill: #521764;
  }
  .react-app .deib-in-stem-ed .programs-panel .who-we-work-with .st3 {
    fill: #743F89;
  }
  .react-app .deib-in-stem-ed .programs-panel .who-we-work-with .st4 {
    fill: #B995C1;
  }
  .react-app .deib-in-stem-ed .programs-panel .who-we-work-with .st5 {
    fill: none;
    stroke: #757575;
    stroke-miterlimit: 10;
  }
  .react-app .deib-in-stem-ed .programs-panel .who-we-work-with .st6 {
    fill: #9E9E9E;
  }
  .react-app .deib-in-stem-ed .programs-panel .who-we-work-with .st7 {
    font-family: 'Roboto', sans-serif;
  }
  .react-app .deib-in-stem-ed .programs-panel .who-we-work-with .st8 {
    font-size: 18px;
  }
  .react-app .deib-in-stem-ed .programs-panel .diverse-population .st0 {
    fill: #FFFFFF;
  }
  .react-app .deib-in-stem-ed .programs-panel .diverse-population .st1 {
    fill: #521764;
  }
  .react-app .deib-in-stem-ed .programs-panel .diverse-population .st2 {
    fill: #FEF8FF;
  }
  .react-app .deib-in-stem-ed .programs-panel .diverse-population .st3 {
    fill: #EBD6EF;
  }
  .react-app .deib-in-stem-ed .programs-panel .diverse-population .st4 {
    fill: #DFC7E3;
  }
  .react-app .deib-in-stem-ed .programs-panel .diverse-population .st5 {
    fill: #D0B4D6;
  }
  .react-app .deib-in-stem-ed .programs-panel .diverse-population .st6 {
    fill: #CAABD1;
  }
  .react-app .deib-in-stem-ed .programs-panel .diverse-population .st7 {
    fill: #B995C1;
  }
  .react-app .deib-in-stem-ed .programs-panel .diverse-population .st8 {
    fill: #743F89;
  }
  .react-app .deib-in-stem-ed .programs-panel .diverse-population .st9 {
    fill: none;
    stroke: #757575;
    stroke-miterlimit: 10;
  }
  .react-app .deib-in-stem-ed .programs-panel .diverse-population .st10 {
    fill: #9E9E9E;
  }
  .react-app .deib-in-stem-ed .programs-panel .diverse-population .st11 {
    font-family: 'Roboto', sans-serif;
  }
  .react-app .deib-in-stem-ed .programs-panel .diverse-population .st12 {
    font-size: 16px;
  }
  .react-app .deib-in-stem-ed .programs-panel-quotes {
    max-width: 930px;
  }
  .react-app .deib-in-stem-ed .strategy-panel .ul {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin-inline-start: 30px;
  }
  .react-app .deib-in-stem-ed .strategy-panel .li {
    list-style: disc;
    margin-bottom: 5px;
  }
  .react-app .deib-in-stem-ed .strategy-panel .ol {
    padding-inline-start: 20px;
  }
  .react-app .modal-demo-page {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 24px;
    padding: 24px;
  }
  .react-app .strings-demo-page {
    padding: 20px;
  }
  .react-app div.edit-profile-page #content {
    padding-top: 12px;
  }
  .react-app div.edit-profile-page #content .delete-button {
    margin: 20px auto;
  }
  .react-app div.admin-edit div.edit-profile-nav span:hover {
    cursor: pointer;
    font-weight: bold;
  }
  .react-app div.account_info_panel a.default-link {
    margin-top: 5px;
    display: inline-block;
  }
  .react-app div.edit-profile-page .h1 {
    margin: 0;
    font-size: 18px;
    color: #d36a04;
    font-weight: bold;
    text-align: left;
  }
  .react-app div.edit-profile-page div.edit-profile-nav {
    border-bottom: solid 1px grey;
    color: grey;
    padding: 10px 0;
    margin-bottom: 20px;
  }
  .react-app div.edit-profile-page div.edit-profile-nav span.selected {
    border-bottom: solid 2px #1B1464;
    color: #1B1464;
  }
  .react-app div.edit-profile-page div.edit-profile-nav > span {
    padding: 10px;
  }
  .react-app div.edit-profile-page div#content {
    display: inline-block;
    vertical-align: top;
  }
  .react-app div.edit-profile-page div.content-and-nav > div {
    display: inline-block;
  }
  .react-app div.account_info_panel > form > div {
    display: inline-block;
    vertical-align: top;
    margin-bottom: 20px;
  }
  .react-app div.account_info_panel label {
    display: block;
  }
  .react-app div.account_info_panel label.checkbox_label {
    display: inline;
  }
  .react-app div.account_info_panel input[type=text],
  .react-app div.account_info_panel input[type=password],
  .react-app div.account_info_panel select {
    display: block;
    width: 90%;
    font-size: inherit;
    padding: 3px;
  }
  .react-app .phetExperience {
    padding: 0;
    border: none;
  }
  .react-app .phetExperience .label {
    display: inline-block;
  }
  .react-app div.account_info_panel hr {
    width: 90%;
    margin-top: -5px;
    margin-bottom: 15px;
    background-color: #ccc;
    border-color: transparent;
    top: 10px;
  }
  .react-app div.account_info_panel label span {
    clear: right;
    margin-bottom: 5px;
    display: block;
  }
  .react-app div.account_info_panel div.email_header {
    margin-bottom: 10px;
  }
  .react-app div.account_info_panel div.helper_label {
    font-size: x-small;
    background-color: lightgray;
    width: 278px;
    padding: 10px;
  }
  .react-app div.account_info_panel a {
    text-decoration: none;
  }
  .react-app div.account_info_panel a:hover {
    text-decoration: underline;
  }
  .react-app div.account_info_panel .h4 {
    margin: 5px 0px;
    font-weight: inherit;
  }
  .react-app div.account_info_panel {
    padding-bottom: 60px;
    position: relative;
  }
  .react-app div.account_info_panel button[type=submit] {
    position: absolute;
    bottom: 0;
    left: -10px;
  }
  .react-app div.edit-profile-page span.error {
    display: block;
  }
  @media (max-width: 826px) {
    .react-app div.edit-profile-page div.content-and-nav {
      text-align: left;
    }
    .react-app div.edit-profile-page div#content {
      max-width: 600px;
      margin: 0 20px;
    }
    .react-app div.edit-profile-page div.edit-profile-nav {
      font-size: 12px;
    }
  }
  @media (min-width: 827px) {
    .react-app div.edit-profile-page div.content-and-nav {
      text-align: center;
    }
    .react-app div.edit-profile-page div#content {
      width: 800px;
    }
  }
  .react-app div.admin-edit {
    border: 5px solid red;
    padding: 10px;
  }
  .react-app .translation-credits-page .section {
    margin-inline: auto;
    max-width: 850px;
    padding-bottom: 96px;
    display: flex;
    row-gap: 16px;
    flex-direction: column;
    padding-inline: 20px;
  }
  .react-app .translation-credits-page .section .type-link {
    display: flex;
    margin-top: 30px;
    margin-left: auto;
  }
  .react-app .for-translators-page .error {
    color: red;
  }
  .react-app .for-translators-page .container {
    margin-bottom: 50px;
  }
  .react-app .for-translators-page .section {
    margin-inline: auto;
    max-width: 850px;
    padding-bottom: 96px;
    display: flex;
    row-gap: 16px;
    flex-direction: column;
    padding-inline: 20px;
  }
  .react-app .for-translators-page .section .spinner {
    padding-block: 20px;
  }
  .react-app .for-translators-page .eggplant-button {
    align-self: center;
  }
  .react-app .inclusive-design-donate-section {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    max-width: 850px;
    margin: auto;
    text-align: center;
    padding-inline: 20px;
  }
  .react-app .inclusive-design .inclusive-design-banner::before {
    content: "";
    background-image: url("/assets/img/elementary-math-classroom.jpg");
    background-position: bottom;
  }
  .react-app .inclusive-design .section {
    margin-inline: auto;
    flex-direction: column;
    padding-inline: 20px;
    max-width: 850px;
    padding-bottom: 96px;
    display: flex;
    row-gap: 16px;
  }
  .react-app .inclusive-design .section.opening-section {
    padding-top: 40px;
  }
  .react-app .inclusive-design .section .sub-section {
    display: flex;
    row-gap: 16px;
    flex-direction: column;
  }
  .react-app .inclusive-design .section .ul {
    list-style-type: disc;
  }
  .react-app .inclusive-design .section .ul.nested {
    list-style-type: circle;
  }
  .react-app .inclusive-design .section .ol {
    font-weight: bold;
  }
  .react-app .inclusive-design .section .ul,
  .react-app .inclusive-design .section .ol {
    padding-left: 30px;
    display: flex;
    flex-direction: column;
    row-gap: 10px;
  }
  .react-app .inclusive-design .section .inclusive-design-cycle {
    padding: 20px 0;
  }
  .react-app .inclusive-design .feature-section-header {
    display: flex;
    row-gap: 16px;
    flex-direction: column;
  }
  .react-app .inclusive-design .feature-section-header .title {
    display: flex;
    justify-content: flex-start;
    column-gap: 10px;
  }
  .react-app .inclusive-design .feature-section-header .title .title-icon {
    width: 32px;
    object-fit: contain;
  }
  .react-app .inclusive-design .video {
    display: flex;
    justify-content: center;
    margin-top: 20px;
    margin-bottom: 20px;
  }
  .react-app .inclusive-design .video iframe {
    width: 700px;
    height: 394px;
  }
  .react-app .inclusive-design .inclusive-design-tab-prototypes {
    display: flex;
    flex-direction: column;
    margin-inline: auto;
    padding-inline: 20px;
  }
  .react-app .inclusive-design .inclusive-design-tab-prototypes .section {
    max-width: 850px;
    padding-bottom: 96px;
  }
  .react-app .inclusive-design .inclusive-design-tab-prototypes .opening-section,
  .react-app .inclusive-design .inclusive-design-tab-prototypes .prototype-title,
  .react-app .inclusive-design .inclusive-design-tab-prototypes .prototype-type-link,
  .react-app .inclusive-design .inclusive-design-tab-prototypes .prototype-description,
  .react-app .inclusive-design .inclusive-design-tab-prototypes .feature-with-text-list {
    max-width: 800px;
  }
  .react-app .inclusive-design .inclusive-design-tab-prototypes .prototype-image {
    width: min-content;
    height: min-content;
    border: 1px solid #d2d2d2;
  }
  .react-app .inclusive-design .inclusive-design-tab-prototypes .prototype-image:focus,
  .react-app .inclusive-design .inclusive-design-tab-prototypes .prototype-image:hover {
    box-shadow: 0 0 6px grey;
  }
  .react-app .inclusive-design .inclusive-design-tab-prototypes .prototype-image .img {
    max-width: 400px;
  }
  .react-app .inclusive-design .inclusive-design-tab-prototypes .feature-with-text-list {
    display: flex;
    flex-direction: column;
    row-gap: 10px;
  }
  .react-app .inclusive-design .inclusive-design-tab-prototypes .feature-with-text-list .feature-with-text {
    display: flex;
    justify-content: flex-start;
    column-gap: 10px;
    align-items: center;
  }
  .react-app .inclusive-design .inclusive-design-tab-prototypes .feature-with-text-list .feature-with-text .feature-icon {
    width: 30px;
  }
  .react-app .inclusive-design .coursera-course {
    margin-bottom: 60px;
  }
  .react-app .inclusive-design .coursera-course:last-child {
    margin-bottom: 0;
  }
  .react-app .inclusive-design .inclusive-design-tab-prototypes {
    display: flex;
    flex-direction: column;
    max-width: 1260px;
    margin: auto;
    padding-inline: 20px;
  }
  .react-app .inclusive-design .inclusive-design-tab-features .disclosure {
    padding-bottom: 8px;
    margin-bottom: 8px;
    border-bottom: 1px solid lightgrey;
  }
  .react-app #front-page {
    text-align: center;
  }
  .react-app .container {
    width: 100%;
  }
  .react-app .remote-teaching-banner {
    background: rgb(82, 23, 100);
    color: white;
    font-weight: 300;
    font-size: 1em;
    padding: 14px;
    box-sizing: border-box;
  }
  .react-app .remote-teaching-banner a,
  .react-app .remote-teaching-banner a:visited {
    color: white;
  }
  .react-app .remote-teaching-banner > div:first-child {
    margin-bottom: 5px;
  }
  .react-app .background-highlight {
    background: rgba(82, 23, 100, 0.05);
  }
  .react-app .sims-delivered {
    padding: 20px;
    margin: 0;
    font-size: 2em;
    font-weight: 300;
  }
  .react-app .sims-delivered .number {
    font-weight: 600;
  }
  .react-app #interact-discover-learn {
    display: block;
    height: 140px;
    padding: 20px;
    margin: 24px auto 0 auto;
  }
  .react-app .what-is-phet {
    max-width: 800px;
    padding: 20px;
    margin: 0 auto 20px;
    text-align: left;
    font-size: 1.24em;
    font-weight: 300;
    line-height: 1.5em;
  }
  .react-app .statistics {
    max-width: 1300px;
    display: flex;
    flex-flow: row wrap;
    margin: 20px auto;
  }
  .react-app .statistic {
    max-width: 240px;
    padding: 20px;
    margin: auto;
    font-size: 1.8em;
    font-weight: 300;
  }
  .react-app .statistic .number {
    display: block;
    font-weight: 600;
  }
  .react-app .statistic .interactive-icon {
    width: 90px;
    padding-top: 20px;
    display: block;
    margin: auto;
  }
  .react-app .remote-learning-text {
    margin-top: 8px;
  }
  .react-app .licensing-page .container {
    margin-bottom: 50px;
  }
  .react-app .licensing-page .section {
    margin-inline: auto;
    max-width: 850px;
    padding-bottom: 96px;
    display: flex;
    row-gap: 16px;
    flex-direction: column;
    padding-inline: 20px;
  }
  .react-app .licensing-page .eggplant-button {
    display: block;
    margin: auto;
    max-width: max-content;
    text-align: center;
  }
  .react-app .licensing-page .ul {
    margin-block: 5px;
    padding-inline-start: 40px;
  }
  .react-app .licensing-page .ul.show-bullets {
    list-style-type: disc;
  }
  .react-app .licensing-page .donate-link {
    margin: 15px auto;
    width: max-content;
    display: block;
  }
  .react-app .licensing-page section.minor-section {
    display: flex;
    row-gap: 12px;
    flex-direction: column;
  }
  .react-app .licensing-page .ol {
    margin-inline-start: 35px;
  }
  .react-app .licensing-page .ol .ol {
    list-style: lower-alpha;
  }
  .react-app .licensing-page .ol .ol .ol {
    list-style: lower-roman;
  }
  .react-app .licensing-page .li {
    line-height: 1.3;
  }
  .react-app .licensing-page .indent {
    display: block;
    margin-inline-start: 10px;
    margin-block-start: 10px;
  }
  .react-app .licensing-page .block-img {
    height: 50px;
    object-fit: contain;
    align-self: start;
  }
  .react-app .offline-access-page .container {
    margin-bottom: 50px;
  }
  .react-app .offline-access-page .section {
    margin-inline: auto;
    max-width: 850px;
    padding-bottom: 96px;
    display: flex;
    row-gap: 16px;
    flex-direction: column;
    padding-inline: 20px;
  }
  .react-app .offline-access-page .minor-section {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-bottom: 32px;
  }
  .react-app .offline-access-page .download-example {
    height: 20px;
  }
  .react-app .offline-access-page .desktop-app-buttons {
    display: flex;
    flex-direction: row;
    gap: 20px;
  }
  .react-app .offline-access-page .desktop-app-buttons .eggplant-button {
    text-transform: none;
  }
  .react-app .offline-access-page .android-badge img {
    width: 140px;
    margin: -10px;
  }
  .react-app .our-supporters .supporter-section-header {
    max-width: 1300px;
    padding-inline-start: 20px;
    margin-inline: auto;
    margin-top: -120px;
    padding-top: 120px;
  }
  .react-app .our-supporters .expandable {
    max-width: 1300px;
  }
  .react-app .our-supporters .expandable button {
    font-weight: 600;
    justify-content: flex-start;
  }
  .react-app .our-supporters .expandable button span {
    padding-inline-end: 20px;
  }
  .react-app .our-supporters .expandable button img {
    height: 20px;
    align-self: center;
  }
  .react-app .our-supporters .past-supporters {
    max-width: 1320px;
    margin: 20px auto;
  }
  .react-app .our-supporters .past-supporters .supporter {
    margin: 5px 0;
    font-size: 20px;
    padding-inline-start: 20px;
  }
  .react-app .our-supporters .past-supporters.hidden {
    display: none;
  }
  .react-app .our-supporters .supporters {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-evenly;
    align-items: center;
    padding: 0;
    list-style: none;
    max-width: 1239px;
    margin: 20px auto 55px auto;
  }
  .react-app .our-supporters .supporters .supporter {
    padding: 30px 50px;
    width: 210px;
    height: 70px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .react-app .our-supporters .supporters .supporter .supporter-link {
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .react-app .our-supporters .supporters .supporter .supporter-image {
    height: 100%;
    width: 100%;
    object-fit: contain;
  }
  .react-app .our-supporters .supporters .supporter .supporter-name {
    text-transform: none;
    font-size: 20px;
    text-align: center;
  }
  .react-app .partnerships-page {
    font-size: 16px;
    line-height: normal;
    font-family: 'Roboto', sans-serif;
  }
  .react-app .partnerships-page .all-partners-link {
    width: max-content;
    margin: 30px auto 0 auto;
    font-size: 14px;
  }
  .react-app .partnerships-page .all-partners-link.see-more-button svg {
    width: 14px;
  }
  .react-app .partnerships-page .wrapper-rules {
    max-width: 1300px;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
  }
  .react-app .partnerships-page .section,
  .react-app .partnerships-page .sponsor-images {
    max-width: 1300px;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
  }
  @media (min-width: 1200px) {
    .react-app .partnerships-page .section,
    .react-app .partnerships-page .sponsor-images {
      justify-content: space-between;
    }
  }
  @media (max-width: 1199px) {
    .react-app .partnerships-page .section,
    .react-app .partnerships-page .sponsor-images {
      justify-content: space-around;
    }
  }
  .react-app .partnerships-page .quote-list {
    max-width: 1300px;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
  }
  @media (min-width: 900px) {
    .react-app .partnerships-page .quote-list {
      justify-content: space-between;
    }
    .react-app .partnerships-page .quote-list .quote-item {
      flex-basis: 50%;
    }
  }
  @media (max-width: 899px) {
    .react-app .partnerships-page .quote-list {
      justify-content: start;
    }
  }
  .react-app .partnerships-page .title-text-container .gradient-container {
    display: flex;
    flex-direction: column;
    max-width: 510px;
  }
  @media (min-width: 900px) {
    .react-app .partnerships-page .title-text-container .gradient-container .title-text {
      font-size: 2.8em;
    }
    .react-app .partnerships-page .title-text-container .gradient-container .play-link {
      font-size: 1.125em;
    }
  }
  .react-app .partnerships-page .title-text-container .gradient-container .sub-text {
    margin-bottom: 30px;
  }
  @media (min-width: 900px) {
    .react-app .partnerships-page .title-text-container .gradient-container .sub-text {
      font-size: 1.125em;
      max-width: 510px;
    }
  }
  @media (max-width: 899px) {
    .react-app .partnerships-page .title-text-container .gradient-container .sub-text {
      font-size: 1em;
      max-width: 300px;
    }
  }
  .react-app .partnerships-page .partner-list {
    text-align: center;
    padding: 45px 20px;
  }
  .react-app .partnerships-page .partner-list .h2 {
    margin-bottom: 30px;
  }
  @media (min-width: 900px) {
    .react-app .partnerships-page .partner-list .h2 {
      font-size: 1.45em;
    }
  }
  @media (max-width: 899px) {
    .react-app .partnerships-page .partner-list .h2 {
      font-size: 1.37em;
    }
  }
  .react-app .partnerships-page .partner-list .partner-list-item {
    height: 30px;
    padding: 20px;
  }
  .react-app .partnerships-page .partner-list .partner-list-item:first-child {
    padding-left: 0;
  }
  .react-app .partnerships-page .partner-list .partner-list-item:last-child {
    padding-right: 0;
  }
  .react-app .partnerships-page .section {
    display: flex;
    align-items: center;
    padding: 0 40px;
    flex-direction: column;
  }
  @media (min-width: 900px) {
    .react-app .partnerships-page .section.right {
      flex-direction: row;
    }
    .react-app .partnerships-page .section.left {
      flex-direction: row-reverse;
    }
  }
  @media (min-width: 900px) {
    .react-app .partnerships-page .section .section-text,
    .react-app .partnerships-page .section .section-video {
      padding: 60px 0;
    }
  }
  @media (max-width: 899px) {
    .react-app .partnerships-page .section .section-video {
      padding: 40px 0 20px 0;
    }
    .react-app .partnerships-page .section .section-text {
      padding: 20px 0 40px 0;
    }
  }
  .react-app .partnerships-page .section .section-text {
    flex-basis: 66%;
    display: flex;
    flex-direction: column;
    width: 100%;
    opacity: 0;
    transition: 0.6s opacity;
  }
  @media (min-width: 900px) {
    .react-app .partnerships-page .section .section-text {
      align-items: center;
    }
  }
  @media (max-width: 899px) {
    .react-app .partnerships-page .section .section-text {
      align-items: start;
    }
  }
  .react-app .partnerships-page .section .section-text.visible {
    opacity: 1;
    transition: 0.6s opacity;
  }
  .react-app .partnerships-page .section .section-text .h2 {
    margin-bottom: 10px;
  }
  @media (min-width: 900px) {
    .react-app .partnerships-page .section .section-text .h2 {
      font-size: 1.45em;
    }
  }
  @media (max-width: 899px) {
    .react-app .partnerships-page .section .section-text .h2 {
      font-size: 1.25em;
    }
  }
  .react-app .partnerships-page .section .section-text li {
    list-style: outside;
    margin: 5px 0 5px 18px;
    font-weight: 300;
  }
  @media (min-width: 900px) {
    .react-app .partnerships-page .section .section-text li {
      font-size: 1.125em;
    }
  }
  .react-app .partnerships-page .section .section-text li::marker {
    color: #6acef5;
  }
  .react-app .partnerships-page .section .section-video {
    flex-basis: 33%;
    justify-content: center;
    display: flex;
  }
  .react-app .partnerships-page .section .section-video,
  .react-app .partnerships-page .section .section-video video {
    height: 200px;
    object-fit: cover;
  }
  .react-app .partnerships-page .action {
    text-align: center;
    margin: 40px auto;
    max-width: 510px;
  }
  .react-app .partnerships-page .action .h2 {
    margin: 45px 0 40px 0;
  }
  .react-app .partnerships-page .action .p {
    margin-top: 20px;
    margin-bottom: 31px;
    font-weight: 300;
  }
  @media (max-width: 451px) {
    .react-app .partnerships-page .action .p {
      margin-right: 20px;
      margin-left: 20px;
    }
  }
  @media (min-width: 450px) {
    .react-app .partnerships-page .action .p {
      margin-right: 10px;
      margin-left: 10px;
    }
  }
  .react-app .partnerships-page .action .icons {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
  }
  .react-app .partnerships-page .action .icons .icon-button {
    display: flex;
    flex-direction: column;
    padding: 15px 40px;
  }
  .react-app .phet-global .phetCard {
    max-width: 850px;
    padding-bottom: 96px;
  }
  .react-app .phet-global .phet-global-banner::before {
    content: "";
    background-image: url("/assets/img/phet-global-banner.jpeg");
  }
  .react-app .phet-global .phet-global-background {
    background: url("/assets/img/world-map-background.svg") no-repeat center;
    background-size: 1600px auto;
    background-position-y: 20px;
    background-position-x: center;
  }
  .react-app .phet-global .checklist-item {
    display: flex;
    margin-bottom: 50px;
    align-items: start;
  }
  @media (max-width: 500px) {
    .react-app .phet-global .checklist-item {
      flex-direction: column;
      align-items: center;
      text-align: center;
    }
  }
  @media (min-width: 501px) {
    .react-app .phet-global .checklist-item {
      align-items: start;
    }
  }
  .react-app .phet-global .checklist-item .h3 {
    padding-bottom: 0;
  }
  .react-app .phet-global .checklist-item .icon {
    width: 60px;
  }
  @media (max-width: 500px) {
    .react-app .phet-global .checklist-item .icon {
      margin-block-end: 20px;
    }
  }
  @media (min-width: 501px) {
    .react-app .phet-global .checklist-item .icon {
      margin-inline-end: 20px;
    }
  }
  .react-app .phet-global .reach-panel .callout {
    padding: 0 0 40px 0;
    font-size: 1.24em;
    font-weight: 300;
    line-height: 1.5em;
  }
  .react-app .phet-global .reach-panel .reach-grid {
    display: grid;
  }
  @media (max-width: 900px) {
    .react-app .phet-global .reach-panel .reach-grid {
      grid-template-areas: 'phetGlobal_reach_mission' 'phetGlobal_reach_impact' 'phetGlobal_reach_join-the-initiative' 'phetGlobal_reach_donors' 'phetGlobal_reach_become-a-supporter';
    }
    .react-app .phet-global .reach-panel .reach-grid .join-the-initiative,
    .react-app .phet-global .reach-panel .reach-grid .become-a-supporter {
      justify-self: center;
    }
  }
  @media (min-width: 901px) {
    .react-app .phet-global .reach-panel .reach-grid {
      grid-template-areas: 'phetGlobal_reach_mission phetGlobal_reach_mission' 'phetGlobal_reach_impact phetGlobal_reach_join-the-initiative' 'phetGlobal_reach_donors phetGlobal_reach_become-a-supporter';
    }
    .react-app .phet-global .reach-panel .reach-grid .join-the-initiative,
    .react-app .phet-global .reach-panel .reach-grid .become-a-supporter {
      justify-self: end;
    }
  }
  .react-app .phet-global .reach-panel .reach-grid .mission {
    grid-area: phetGlobal_reach_mission;
  }
  .react-app .phet-global .reach-panel .reach-grid .impact {
    grid-area: phetGlobal_reach_impact;
  }
  .react-app .phet-global .reach-panel .reach-grid .donors {
    grid-area: phetGlobal_reach_donors;
    margin-bottom: 40px;
  }
  .react-app .phet-global .reach-panel .reach-grid .join-the-initiative {
    grid-area: phetGlobal_reach_join-the-initiative;
    max-width: 320px;
    padding-inline: 27.5px;
    align-self: start;
    text-align: center;
    margin-bottom: 40px;
  }
  .react-app .phet-global .reach-panel .reach-grid .become-a-supporter {
    grid-area: phetGlobal_reach_become-a-supporter;
    max-width: 375px;
    align-self: start;
    text-align: center;
    margin-bottom: 40px;
  }
  @media (max-width: 900px) {
    .react-app .phet-global .reach-panel .h2 {
      text-align: center;
    }
  }
  @media (max-width: 900px) and (min-width: 511px) {
    .react-app .phet-global .reach-panel .impact-items {
      width: max-content;
      margin: auto;
    }
  }
  .react-app .phet-global .reach-panel .play-link {
    margin: 0 10px 10px 10px;
  }
  .react-app .phet-global .reach-panel .partner-list {
    display: flex;
    gap: 60px;
  }
  @media (max-width: 900px) {
    .react-app .phet-global .reach-panel .partner-list {
      justify-content: center;
    }
  }
  @media (min-width: 901px) {
    .react-app .phet-global .reach-panel .partner-list {
      justify-content: start;
    }
  }
  .react-app .phet-global .reach-panel .donor .icon {
    width: 100px;
    object-fit: contain;
  }
  .react-app .phet-global .reach-panel .eggplant-button {
    margin: 10px;
  }
  .react-app .phet-global .resources-panel .callout {
    font-size: 1.24em;
    font-weight: 300;
    line-height: 1.5em;
    margin-bottom: 40px;
  }
  .react-app .phet-global .resources-panel .ul {
    padding-block: 20px;
  }
  .react-app .phet-global .community-panel .section.connect-grid {
    display: grid;
    grid-template-areas: 'phetGlobalCommunity_heading phetGlobalCommunity_heading' 'phetGlobalCommunity_p phetGlobalCommunity_p' 'phetGlobalCommunity_subscribe phetGlobalCommunity_facebook';
    grid-template-rows: auto auto 1fr;
  }
  .react-app .phet-global .community-panel .section.connect-grid .connect-heading {
    grid-area: phetGlobalCommunity_heading;
  }
  .react-app .phet-global .community-panel .section.connect-grid .connect-p {
    grid-area: phetGlobalCommunity_p;
  }
  .react-app .phet-global .community-panel .section.connect-grid .subscribe-button {
    grid-area: phetGlobalCommunity_subscribe;
    align-self: start;
    justify-self: center;
  }
  .react-app .phet-global .community-panel .section.connect-grid .already-subscribed {
    grid-area: phetGlobalCommunity_subscribe;
    align-self: center;
    justify-self: start;
  }
  .react-app .phet-global .community-panel .section.connect-grid .facebook-group {
    grid-area: phetGlobalCommunity_facebook;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    max-width: 190px;
    text-transform: none;
    justify-self: center;
    align-self: start;
  }
  .react-app .phet-global .community-panel .section.connect-grid .facebook-group img {
    height: 40px;
    filter: invert(41%) sepia(55%) saturate(640%) hue-rotate(182deg) brightness(70%) contrast(90%);
  }
  .react-app .phet-global .team-panel .floating-link {
    text-transform: none;
  }
  .react-app .phet-global .team-panel .section {
    display: grid;
    justify-content: center;
  }
  @media (min-width: 675px) {
    .react-app .phet-global .team-panel .section {
      grid-template-columns: 225px 450px;
      grid-template-areas: 'left right';
    }
  }
  @media (max-width: 674px) {
    .react-app .phet-global .team-panel .section {
      grid-template-areas: 'left' 'right';
      text-align: center;
    }
  }
  .react-app .phet-global .team-panel .section .left {
    grid-area: left;
    display: flex;
    justify-content: center;
  }
  .react-app .phet-global .team-panel .section .left .mapImage {
    max-height: 100px;
    padding-bottom: 10px;
    filter: drop-shadow(0 0 0 #521764);
  }
  .react-app .phet-global .team-panel .section .right {
    grid-area: right;
  }
  .react-app .phet-global .team-panel .eggplant-button {
    display: flex;
    margin: auto;
    width: max-content;
  }
  .react-app .privacy-policy-page .section {
    margin-inline: auto;
    max-width: 850px;
    padding-bottom: 96px;
    display: flex;
    row-gap: 16px;
    flex-direction: column;
    padding-inline: 20px;
  }
  .react-app .privacy-policy-page .section .effective-date {
    padding: 40px 0;
  }
  .react-app .privacy-policy-page .section .ul {
    list-style-type: disc;
    padding-left: 30px;
    line-height: 30px;
  }
  .react-app .student-callout {
    padding-bottom: 15px;
  }
  .react-app #maybe-later-button {
    text-transform: none;
    border: none;
    background: none;
  }
  .react-app .registration-page .page-content,
  .react-app .registration-page #page-header {
    display: none;
  }
  .react-app .registration-page,
  .react-app .edit-profile-page {
    /**
     * Responsive Column Rules
     */
  }
  .react-app .registration-page input,
  .react-app .edit-profile-page input,
  .react-app .registration-page select,
  .react-app .edit-profile-page select {
    font-weight: 300;
  }
  .react-app .registration-page .registration-sign-in,
  .react-app .edit-profile-page .registration-sign-in {
    display: inline-block;
    margin: 10px;
  }
  .react-app .registration-page .preferredemaillocale-label,
  .react-app .edit-profile-page .preferredemaillocale-label {
    grid-area: email-locale;
  }
  .react-app .registration-page .over-thirteen,
  .react-app .edit-profile-page .over-thirteen {
    grid-area: over-thirteen;
  }
  .react-app .registration-page .translationcreditoptin-label,
  .react-app .edit-profile-page .translationcreditoptin-label {
    grid-area: translation-credit;
  }
  .react-app .registration-page .under-thirteen-button,
  .react-app .edit-profile-page .under-thirteen-button {
    grid-area: under-thirteen;
  }
  .react-app .registration-page .change-email-link,
  .react-app .edit-profile-page .change-email-link {
    grid-area: change-email-link;
  }
  .react-app .registration-page .change-password-title,
  .react-app .edit-profile-page .change-password-title {
    grid-area: change-password-title;
  }
  .react-app .registration-page .change-password-link,
  .react-app .edit-profile-page .change-password-link {
    grid-area: change-password-link;
  }
  .react-app .registration-page .organization-label,
  .react-app .edit-profile-page .organization-label {
    grid-area: organization;
  }
  .react-app .registration-page .teachingsince-label,
  .react-app .edit-profile-page .teachingsince-label {
    grid-area: teachingsince;
  }
  .react-app .registration-page .types-fieldset,
  .react-app .edit-profile-page .types-fieldset {
    grid-area: types;
  }
  .react-app .registration-page .subjects-fieldset,
  .react-app .edit-profile-page .subjects-fieldset {
    grid-area: subjects;
  }
  .react-app .registration-page .grades-fieldset,
  .react-app .edit-profile-page .grades-fieldset {
    grid-area: grades;
  }
  .react-app .registration-page .teacher-types-fieldset,
  .react-app .edit-profile-page .teacher-types-fieldset {
    grid-area: teachertypes;
  }
  .react-app .registration-page .description-fieldset,
  .react-app .edit-profile-page .description-fieldset {
    grid-area: description;
  }
  .react-app .registration-page .email-label,
  .react-app .edit-profile-page .email-label {
    grid-area: email;
  }
  .react-app .registration-page .confirmemail-label,
  .react-app .edit-profile-page .confirmemail-label {
    grid-area: confirmemail;
  }
  .react-app .registration-page .secondaryemail-label,
  .react-app .edit-profile-page .secondaryemail-label {
    grid-area: secondaryemail;
  }
  .react-app .registration-page .password-label,
  .react-app .edit-profile-page .password-label {
    grid-area: password;
  }
  .react-app .registration-page .confirmPassword-label,
  .react-app .edit-profile-page .confirmPassword-label {
    grid-area: confirmPassword;
  }
  .react-app .registration-page .name-label,
  .react-app .edit-profile-page .name-label {
    grid-area: name;
  }
  .react-app .registration-page .lastname-label,
  .react-app .edit-profile-page .lastname-label {
    grid-area: lastname;
  }
  .react-app .registration-page .country-label,
  .react-app .edit-profile-page .country-label {
    grid-area: country;
  }
  .react-app .registration-page .state-label,
  .react-app .edit-profile-page .state-label {
    grid-area: state;
  }
  .react-app .registration-page .city-label,
  .react-app .edit-profile-page .city-label {
    grid-area: city;
  }
  .react-app .registration-page .zipcode-label,
  .react-app .edit-profile-page .zipcode-label {
    grid-area: zipcode;
  }
  .react-app .registration-page .receiveemail-label,
  .react-app .edit-profile-page .receiveemail-label {
    grid-area: receiveemail;
  }
  .react-app .registration-page .next,
  .react-app .edit-profile-page .next {
    grid-area: next;
    justify-self: center;
    align-self: center;
  }
  .react-app .registration-page .register,
  .react-app .edit-profile-page .register {
    grid-area: submit;
    justify-self: center;
    align-self: center;
  }
  .react-app .registration-page .registration_warning,
  .react-app .edit-profile-page .registration_warning {
    grid-area: privacy;
    justify-self: center;
  }
  .react-app .registration-page .hr,
  .react-app .edit-profile-page .hr {
    grid-area: hr;
    width: 100%;
  }
  .react-app .registration-page .email_header,
  .react-app .edit-profile-page .email_header {
    grid-area: email_header;
  }
  .react-app .registration-page .clever-panel,
  .react-app .edit-profile-page .clever-panel {
    grid-template-areas: 'error-list' 'email' 'confirmemail' 'country' 'state' 'city' 'zipcode' 'hr' 'organization' 'subjects' 'grades' 'teachingsince' 'teachertypes' 'description' 'email_header' 'receiveemail' 'email-locale' 'over-thirteen' 'submit' 'privacy';
  }
  @media (min-width: 827px) {
    .react-app .registration-page .contact-info-panel,
    .react-app .edit-profile-page .contact-info-panel {
      grid-template-areas: 'required-fields required-fields' 'error-list error-list' 'email secondaryemail' 'confirmemail .' 'password confirmPassword' 'name lastname' 'hr hr' 'country state' 'city zipcode' 'email_header .' 'receiveemail .' 'email-locale .' 'next next';
      grid-template-columns: 1fr 1fr;
    }
  }
  @media (max-width: 826px) {
    .react-app .registration-page .contact-info-panel,
    .react-app .edit-profile-page .contact-info-panel {
      grid-template-areas: 'required-fields' 'error-list' 'email' 'confirmemail' 'secondaryemail' 'password' 'confirmPassword' 'name' 'lastname' 'country' 'state' 'city' 'zipcode' 'email_header' 'receiveemail' 'email-locale' 'next';
      grid-template-columns: 1fr;
    }
    .react-app .registration-page .contact-info-panel .hr,
    .react-app .edit-profile-page .contact-info-panel .hr {
      display: none;
    }
    .react-app .registration-page .contact-info-panel .email_header,
    .react-app .edit-profile-page .contact-info-panel .email_header {
      justify-self: center;
    }
    .react-app .registration-page .contact-info-panel .profile-label,
    .react-app .edit-profile-page .contact-info-panel .profile-label {
      width: 100%;
      justify-self: center;
      max-width: 400px;
    }
    .react-app .registration-page .contact-info-panel .profile-input,
    .react-app .edit-profile-page .contact-info-panel .profile-input {
      width: 100%;
    }
    .react-app .registration-page .contact-info-panel .profile-input.country-input,
    .react-app .edit-profile-page .contact-info-panel .profile-input.country-input {
      width: calc(100% + 10px);
    }
  }
  .react-app .registration-page .profile-form,
  .react-app .edit-profile-page .profile-form {
    text-align: start;
    padding-inline: 50px;
    display: grid;
    column-gap: 50px;
    max-width: 800px;
    margin-inline: auto;
  }
  .react-app .registration-page .profile-form > *,
  .react-app .edit-profile-page .profile-form > * {
    margin-bottom: 20px;
  }
  .react-app .registration-page .profile-form.account-type-panel,
  .react-app .edit-profile-page .profile-form.account-type-panel {
    max-width: 600px;
    display: flex;
    flex-direction: column;
  }
  @media (min-width: 827px) {
    .react-app .registration-page .profile-form.account-info-panel,
    .react-app .edit-profile-page .profile-form.account-info-panel {
      grid-template-areas: 'required-fields required-fields' 'error-list error-list' 'over-thirteen over-thirteen' 'translation-credit translation-credit' 'types types' 'name lastname' 'country state' 'city zipcode' 'hr hr' 'organization organization' 'subjects grades' 'teachertypes .' 'description teachingsince' 'next next';
      grid-template-columns: 325px 325px;
    }
  }
  @media (max-width: 826px) {
    .react-app .registration-page .profile-form.account-info-panel,
    .react-app .edit-profile-page .profile-form.account-info-panel {
      grid-template-areas: 'required-fields' 'error-list' 'over-thirteen' 'translation-credit' 'types' 'name' 'lastname' 'country' 'state' 'city' 'zipcode' 'organization' 'subjects' 'grades' 'teachertypes' 'description' 'teachingsince' 'next';
      grid-template-columns: 1fr;
    }
  }
  .react-app .registration-page .profile-form.subscriptions-panel,
  .react-app .edit-profile-page .profile-form.subscriptions-panel {
    display: flex;
    flex-direction: column;
  }
  .react-app .registration-page .profile-form.subscriptions-panel .update,
  .react-app .edit-profile-page .profile-form.subscriptions-panel .update {
    justify-self: center;
    align-self: center;
  }
  .react-app .registration-page .profile-form.email-password-panel,
  .react-app .edit-profile-page .profile-form.email-password-panel {
    grid-template-areas: 'error-list' 'email' 'change-email-link' 'secondaryemail' 'hr' 'change-password-title' 'change-password-link' 'next';
    grid-template-columns: 1fr;
  }
  @media (min-width: 827px) {
    .react-app .registration-page .profile-form.organization-panel,
    .react-app .edit-profile-page .profile-form.organization-panel {
      grid-template-areas: 'required-fields required-fields required-fields' 'error-list error-list error-list' 'organization organization organization' 'subjects grades teachingsince' 'teachertypes teachertypes teachertypes' 'description description description' 'submit submit submit' 'privacy privacy privacy';
    }
  }
  @media (max-width: 826px) {
    .react-app .registration-page .profile-form.organization-panel,
    .react-app .edit-profile-page .profile-form.organization-panel {
      grid-template-areas: 'required-fields' 'error-list' 'organization' 'subjects' 'grades' 'teachingsince' 'teachertypes' 'description' 'submit' 'privacy';
    }
  }
  .react-app .registration-page .profile-form .profile-fieldset,
  .react-app .edit-profile-page .profile-form .profile-fieldset {
    display: flex;
    flex-direction: column;
    border: none;
    margin-inline: 0;
    padding-inline: 0;
  }
  .react-app .registration-page .profile-form.admin-panel,
  .react-app .edit-profile-page .profile-form.admin-panel {
    padding-top: 30px;
  }
  .react-app .registration-page .profile-form.admin-panel .admin-hr,
  .react-app .edit-profile-page .profile-form.admin-panel .admin-hr {
    width: 100%;
  }
  .react-app .registration-page .profile-form.admin-panel .profile-label,
  .react-app .edit-profile-page .profile-form.admin-panel .profile-label {
    flex-direction: row;
  }
  .react-app .registration-page .profile-form.admin-panel .locale-selector,
  .react-app .edit-profile-page .profile-form.admin-panel .locale-selector {
    display: flex;
    align-items: center;
  }
  .react-app .registration-page .profile-form.admin-panel .locale-selector .locale-add-button,
  .react-app .edit-profile-page .profile-form.admin-panel .locale-selector .locale-add-button {
    color: darkblue;
    padding: 5px 10px;
  }
  .react-app .registration-page .profile-form.admin-panel .remove-locale-button,
  .react-app .edit-profile-page .profile-form.admin-panel .remove-locale-button {
    background: none;
    padding: 5px;
    margin: 5px;
  }
  .react-app .registration-page .profile-form .profile-label,
  .react-app .edit-profile-page .profile-form .profile-label {
    display: flex;
    flex-direction: column;
    gap: 5px;
  }
  .react-app .registration-page .profile-form .profile-label.organization-label,
  .react-app .edit-profile-page .profile-form .profile-label.organization-label {
    display: grid;
    justify-content: start;
    grid-template-areas: 'title' 'error' 'add' 'selector';
  }
  .react-app .registration-page .profile-form .profile-label.organization-label .organization-title,
  .react-app .edit-profile-page .profile-form .profile-label.organization-label .organization-title {
    grid-area: title;
  }
  .react-app .registration-page .profile-form .profile-label.organization-label .organization-error,
  .react-app .edit-profile-page .profile-form .profile-label.organization-label .organization-error {
    grid-area: error;
  }
  .react-app .registration-page .profile-form .profile-label.organization-label .school-selector,
  .react-app .edit-profile-page .profile-form .profile-label.organization-label .school-selector {
    grid-area: selector;
  }
  .react-app .registration-page .profile-form .profile-label.organization-label .add-school-button,
  .react-app .edit-profile-page .profile-form .profile-label.organization-label .add-school-button {
    grid-area: add;
    justify-self: start;
  }
  .react-app .registration-page .profile-form .profile-label .profile-input,
  .react-app .edit-profile-page .profile-form .profile-label .profile-input {
    font-size: 1em;
    padding: 3px;
  }
  .react-app .registration-page .profile-form .profile-label .teachingsince-input,
  .react-app .edit-profile-page .profile-form .profile-label .teachingsince-input {
    width: min-content;
  }
  .react-app .registration-page .profile-form .profile-label.receiveemail-label,
  .react-app .edit-profile-page .profile-form .profile-label.receiveemail-label,
  .react-app .registration-page .profile-form .profile-label.isoverthirteen-label,
  .react-app .edit-profile-page .profile-form .profile-label.isoverthirteen-label,
  .react-app .registration-page .profile-form .profile-label.agreestoprivacypolicy-label,
  .react-app .edit-profile-page .profile-form .profile-label.agreestoprivacypolicy-label,
  .react-app .registration-page .profile-form .profile-label.translationcreditoptin-label,
  .react-app .edit-profile-page .profile-form .profile-label.translationcreditoptin-label {
    flex-direction: row;
  }
  .react-app .registration-page .profile-form .profile-label.receiveemail-label .receiveemail-input,
  .react-app .edit-profile-page .profile-form .profile-label.receiveemail-label .receiveemail-input,
  .react-app .registration-page .profile-form .profile-label.isoverthirteen-label .receiveemail-input,
  .react-app .edit-profile-page .profile-form .profile-label.isoverthirteen-label .receiveemail-input,
  .react-app .registration-page .profile-form .profile-label.agreestoprivacypolicy-label .receiveemail-input,
  .react-app .edit-profile-page .profile-form .profile-label.agreestoprivacypolicy-label .receiveemail-input,
  .react-app .registration-page .profile-form .profile-label.translationcreditoptin-label .receiveemail-input,
  .react-app .edit-profile-page .profile-form .profile-label.translationcreditoptin-label .receiveemail-input {
    margin: 0;
    margin-inline-end: 5px;
    width: max-content;
  }
  .react-app .registration-page .profile-form .profile-label .helper_label,
  .react-app .edit-profile-page .profile-form .profile-label .helper_label {
    background: lightgrey;
    padding: 10px;
  }
  .react-app .registration-page .profile-form .profile-array-item,
  .react-app .edit-profile-page .profile-form .profile-array-item {
    padding-bottom: 2px;
    cursor: pointer;
    display: flex;
    margin-block: 1px;
    gap: 5px;
  }
  .react-app .registration-page .link-style-button,
  .react-app .edit-profile-page .link-style-button {
    border: none;
    background: none;
    color: grey;
    font-weight: 300;
    margin: 0;
    padding: 0;
  }
  .react-app .registration-page .link-style-button.under-thirteen-button,
  .react-app .edit-profile-page .link-style-button.under-thirteen-button {
    margin-inline-start: 25px;
    margin-block-start: 10px;
  }
  .react-app .registration-page div#content div.hidden,
  .react-app .edit-profile-page div#content div.hidden,
  .react-app .registration-page div#content label.hidden,
  .react-app .edit-profile-page div#content label.hidden {
    display: none !important;
  }
  .react-app .registration-page p.error,
  .react-app .edit-profile-page p.error,
  .react-app .registration-page span.error,
  .react-app .edit-profile-page span.error,
  .react-app .registration-page div.error,
  .react-app .edit-profile-page div.error {
    color: red;
  }
  .react-app .registration-page input.error,
  .react-app .edit-profile-page input.error,
  .react-app .registration-page select.error,
  .react-app .edit-profile-page select.error {
    background-color: #ff9999;
  }
  @media (max-width: 826px) {
    .react-app .registration-page div.col-1,
    .react-app .edit-profile-page div.col-1,
    .react-app .registration-page div.col-2,
    .react-app .edit-profile-page div.col-2,
    .react-app .registration-page div.col-3,
    .react-app .edit-profile-page div.col-3 {
      width: 100%;
    }
  }
  @media (min-width: 827px) {
    .react-app .registration-page div.col-2,
    .react-app .edit-profile-page div.col-2,
    .react-app .registration-page div.col-3,
    .react-app .edit-profile-page div.col-3 {
      display: inline-block;
      vertical-align: top;
    }
    .react-app .registration-page div.col-1,
    .react-app .edit-profile-page div.col-1 {
      width: 100%;
    }
    .react-app .registration-page div.col-2,
    .react-app .edit-profile-page div.col-2 {
      width: 50%;
    }
    .react-app .registration-page .contact_info_panel div.col-2,
    .react-app .edit-profile-page .contact_info_panel div.col-2 {
      width: 42%;
      margin-inline-end: 55px;
    }
    .react-app .registration-page div.col-3,
    .react-app .edit-profile-page div.col-3 {
      width: 33%;
      margin: 10px 0;
    }
  }
  @media (max-width: 826px) {
    .react-app .registration-page .hr {
      display: none;
    }
    .react-app .registration-page div#content button.register {
      text-align: center;
    }
    .react-app .registration-page div#sign-in button {
      display: none;
    }
    .react-app .registration-page div#sign-in a {
      color: lightslategrey;
      text-decoration: none;
    }
    .react-app .registration-page div#sign-in {
      margin-top: 5px;
    }
  }
  .react-app .registration-page .h1 {
    font-weight: normal;
  }
  .react-app .registration-page div#sign-in {
    width: 100%;
    font-weight: bold;
    text-align: right;
  }
  .react-app .registration-page div#header {
    width: 100%;
    text-align: center;
    margin: 25px 0 20px 0;
  }
  .react-app .registration-page div#header img {
    height: 100px;
  }
  .react-app .registration-page div#header button.link-style {
    margin: 0;
    padding: 0;
    border: 0;
    color: black;
  }
  .react-app .registration-page div#header button:hover.link-style {
    color: grey;
  }
  .react-app .registration-page #student-dialog button.link-style {
    font-size: 12px;
  }
  .react-app .registration-page #header button.link-style,
  .react-app .registration-page button.link-style {
    background-color: rgba(0, 0, 0, 0);
    color: inherit;
    text-decoration: underline;
    font-weight: normal;
  }
  .react-app .registration-page div#content button.register {
    text-transform: uppercase;
  }
  .react-app .about-panel {
    margin: 20px;
    display: grid;
  }
  .rtl .react-app .about-panel .badge-holder {
    padding-left: 5px;
  }
  .ltr .react-app .about-panel .badge-holder {
    padding-right: 5px;
  }
  .react-app .about-panel .flash-deprecated {
    font-size: 18px;
    border: 3px solid red;
    margin-top: 20px;
    padding: 20px;
    max-width: 250px;
  }
  .react-app .about-panel .flash-deprecated .donate-link {
    display: block;
    margin: auto;
    width: max-content;
  }
  .react-app .about-panel .supporter-callout,
  .react-app .about-panel .flash-deprecated {
    margin: 0;
  }
  @media (max-width: 694px) {
    .react-app .about-panel .supporter-callout,
    .react-app .about-panel .flash-deprecated {
      grid-column: 1;
      justify-self: center;
    }
  }
  @media (min-width: 695px) {
    .react-app .about-panel .supporter-callout,
    .react-app .about-panel .flash-deprecated {
      grid-column: 2;
      grid-row-start: 1;
      grid-row-end: 10;
      justify-self: flex-end;
      margin: -15px 10px;
    }
  }
  .react-app .about-panel .supporter-callout .supported-by,
  .react-app .about-panel .flash-deprecated .supported-by {
    margin: 20px 0 26px 0;
  }
  .react-app .about-panel .section {
    grid-column: 1;
    justify-self: flex-start;
    display: flex;
    flex-direction: row;
    padding: 20px 0 20px 0;
    max-width: 680px;
  }
  .react-app .about-panel .section .icon {
    min-width: 60px;
    max-width: 60px;
  }
  .rtl .react-app .about-panel .section .icon {
    padding-left: 20px;
  }
  .ltr .react-app .about-panel .section .icon {
    padding-right: 20px;
  }
  .rtl .react-app .about-panel .section .content ul {
    padding: 10px 20px 0 0;
  }
  .ltr .react-app .about-panel .section .content ul {
    padding: 10px 0 0 20px;
  }
  .react-app .about-panel .section.standards .content ul {
    padding: 10px 0 0 0;
    display: flex;
    flex-wrap: wrap;
  }
  .react-app .about-panel .section.standards .standards-alignment {
    position: relative;
    list-style-type: none;
    padding: 0 5px 5px 0;
  }
  .react-app .about-panel .section.standards .standards-alignment .label {
    display: inline-block;
    background: #f7f4f9;
    border-radius: 3px;
    padding: 4px;
    margin: 2px;
  }
  .react-app .about-panel .section.accessibility .content ul {
    padding: 10px 0 0 0;
  }
  .react-app .about-panel .section.accessibility .content .a11y-text {
    margin-top: 10px;
  }
  .react-app .about-panel .section.accessibility .accessibility-feature {
    list-style: none;
    display: flex;
    flex-direction: row;
    align-items: center;
  }
  .react-app .about-panel .section.accessibility .accessibility-feature .badge-holder svg {
    height: 30px;
    width: 30px;
  }
  .react-app .about-panel .section .system-requirements {
    display: grid;
    grid-template-areas: 'left right1' 'left right2';
    padding-top: 10px;
    justify-content: start;
  }
  .react-app .about-panel .section .system-requirements .left {
    grid-area: left;
  }
  .react-app .about-panel .section .system-requirements .right1 {
    grid-area: right1;
  }
  .react-app .about-panel .section .system-requirements .right2 {
    grid-area: right2;
    margin-top: 10px;
  }
  .react-app .about-panel .li {
    list-style: disc;
    margin-bottom: 5px;
  }
  .react-app .activities-panel {
    margin: auto;
    max-width: 1250px;
  }
  .react-app .activities-panel .no-activity-match {
    padding: 40px;
    text-align: center;
  }
  .react-app .activities-panel .activities-header {
    margin: 20px 20px 10px 0;
  }
  .react-app .activities-panel .activities-header .activities-filters {
    display: flex;
  }
  .react-app .activities-panel .activities-header .activities-filters .h4 {
    font-weight: 600;
    margin: 10px 10px 0 0;
  }
  @media (min-width: 910px) {
    .react-app .activities-panel .activities-header .activities-filters {
      margin-bottom: 10px;
      align-items: center;
      flex-wrap: wrap;
    }
  }
  @media (max-width: 909px) {
    .react-app .activities-panel .activities-header .activities-filters {
      margin: 10px 0;
      align-items: flex-start;
      flex-direction: column;
    }
  }
  @media (min-width: 910px) {
    .ltr .react-app .activities-panel .activities-header .activities-filters .phetDropdown {
      margin: 10px 20px 0 0;
    }
    .rtl .react-app .activities-panel .activities-header .activities-filters .phetDropdown {
      margin: 10px 0 0 20px;
    }
  }
  @media (max-width: 909px) {
    .react-app .activities-panel .activities-header .activities-filters .phetDropdown {
      margin: 5px 0;
    }
  }
  .react-app .activities-panel .inquiry-checkmark {
    text-align: center;
  }
  .react-app .activities-panel .activities-table-title {
    text-transform: none;
  }
  .react-app .activities-panel .activities-table-type {
    display: flex;
    flex-direction: column;
  }
  .react-app .activities-panel .activities-table-subject {
    display: flex;
    flex-direction: column;
  }
  .react-app .activities-panel .activities-share-button {
    text-transform: uppercase;
    border: 2px solid rgb(82, 23, 100);
    color: rgb(82, 23, 100);
    font-size: 18px;
    text-align: center;
    text-decoration: none;
    margin: 20px auto 0;
    display: block;
    width: max-content;
    padding: 10px 20px;
  }
  .react-app .activities-panel .activities-share-button:hover,
  .react-app .activities-panel .activities-share-button:active {
    color: white;
    background-color: rgb(82, 23, 100);
  }
  .react-app .alt-thumbnail-list {
    display: flex;
    align-items: flex-end;
  }
  .react-app .alt-thumbnail-list .alt-thumbnail:first-child button {
    margin-left: 0;
  }
  .react-app .alt-thumbnail-list .alt-thumbnail button {
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font-weight: 300;
    margin: 8px;
    position: relative;
  }
  .react-app .alt-thumbnail-list .alt-thumbnail button:focus,
  .react-app .alt-thumbnail-list .alt-thumbnail button:hover {
    box-shadow: 0 0 6px grey;
  }
  .react-app .alt-thumbnail-list .alt-thumbnail button .more-images {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    top: 0;
    background: rgba(0, 0, 0, 0.6);
    color: white;
    font-size: 28px;
    font-weight: 500;
  }
  .react-app .alt-thumbnail-list .alt-thumbnail img {
    display: block;
    max-height: 100px;
    object-fit: contain;
    border: 1px solid #d2d2d2;
  }
  @media (max-width: 500px) {
    .react-app .alt-thumbnail-list .alt-thumbnail img {
      max-width: 35vw;
    }
  }
  @media (min-width: 501px) {
    .react-app .alt-thumbnail-list .alt-thumbnail img {
      max-width: 100%;
    }
  }
  .react-app .alt-thumbnail-list .alt-thumbnail.hidden {
    display: none;
  }
  .react-app .rtl #filter-page-left,
  .react-app .rtl #filter-page-right {
    float: right;
  }
  .react-app .rtl #filter-page-left {
    padding-right: 0;
    padding-left: 10px;
  }
  .react-app .rtl .group-checkbox-content {
    padding-right: 4px;
  }
  .react-app .rtl [role="checkbox"] {
    padding: 3px 1.4em 3px 0;
  }
  .react-app .rtl [role="checkbox"]::before,
  .react-app .rtl [role="checkbox"]::after {
    right: -7px;
  }
  .react-app .rtl [role="checkbox"][aria-checked="mixed"]::after {
    transform: translate(-150%, -50%) rotateZ(45deg);
  }
  .react-app .rtl [role="checkbox"][aria-checked="true"]::after {
    transform: translateY(-65%) translateX(-220%) rotate(45deg);
  }
  .react-app .rtl [role="checkbox"]:focus::before {
    right: -13px;
  }
  .react-app .rtl ul.checkboxes.inset {
    padding-left: 0;
    padding-right: 1.4em;
  }
  .react-app .rtl .sort-dropdown {
    margin: 0 0 0 10px;
  }
  .react-app .rtl .breadcrumbs {
    margin-left: 0;
    margin-right: 20px;
  }
  .react-app .rtl .breadcrumbs button {
    margin: 10px 0 10px 10px;
  }
  .react-app .rtl .breadcrumbs button img {
    margin: 0 10px 0 0;
  }
  @media (min-width: 797px) {
    .react-app .rtl .toggle-view-control {
      margin: 0 20px 0 0px;
    }
  }
  .react-app .rtl .tile .smallTileScaling {
    transform-origin: right top;
  }
  .react-app .rtl .tile.grid .information .icons .a11y-badges,
  .react-app .rtl .tile.strip .information .icons .a11y-badges {
    margin-left: 0;
    margin-right: 7px;
    border-left: none;
    border-right: 1px solid #d2d2d2;
  }
  .react-app .rtl .tile.grid .information .icons .a11y-badges .badge-holder,
  .react-app .rtl .tile.strip .information .icons .a11y-badges .badge-holder {
    padding-left: 0;
    padding-right: 7px;
  }
  .react-app .rtl .tile.strip {
    transform-origin: right top;
  }
  .react-app .rtl .tile.list {
    margin: 0 19px 0 0;
  }
  .react-app .rtl .tile.list .information .icons .a11y-badges {
    margin-right: 0;
    margin-left: 7px;
    border-right: none;
    border-left: 1px solid #d2d2d2;
  }
  .react-app .rtl .tile.list .information .icons .a11y-badges .badge-holder {
    padding-right: 0;
    padding-left: 7px;
  }
  @media (max-width: 503px) {
    .react-app .rtl .tile.grid {
      transform-origin: right top;
    }
  }
  .react-app .rtl .subject-container .h3 {
    padding: 0 0 0 10px;
  }
  .react-app .rtl .badge-tooltip-inner {
    position: absolute;
    left: 0;
  }
  .react-app .subject-container {
    position: relative;
  }
  .react-app .subject-container .h3 {
    display: flex;
    width: max-content;
    padding-right: 10px;
  }
  .react-app .subject-container .film-strip {
    margin-left: -20px;
    margin-right: -20px;
  }
  .react-app .subject-container .see-more-button {
    color: black;
  }
  .react-app ul.checkboxes {
    list-style: none;
    margin-left: 0;
  }
  .ltr .react-app ul.checkboxes.inset {
    padding-left: 1.4em;
  }
  .rtl .react-app ul.checkboxes.inset {
    padding-right: 1.4em;
  }
  .react-app [role="checkbox"] {
    display: inline-block;
    position: relative;
    cursor: pointer;
    font-weight: 300;
    width: 100%;
    box-sizing: border-box;
  }
  .ltr .react-app [role="checkbox"] {
    padding: 3px 0 3px 1.4em;
  }
  .rtl .react-app [role="checkbox"] {
    padding: 3px 1.4em 3px 0;
  }
  .react-app [role="checkbox"]::before,
  .react-app [role="checkbox"]::after {
    position: absolute;
    top: 50%;
    content: '';
    transform: translate(-50%, -50%);
  }
  .ltr .react-app [role="checkbox"]::before,
  .ltr .react-app [role="checkbox"]::after {
    left: 7px;
  }
  .rtl .react-app [role="checkbox"]::before,
  .rtl .react-app [role="checkbox"]::after {
    right: -7px;
  }
  .react-app [role="checkbox"]::before {
    width: 14px;
    height: 14px;
    border: 1px solid hsl(0, 0%, 66%);
    border-radius: 0.2em;
    background-image: linear-gradient(to bottom, hsl(300, 3%, 93%), #fff 30%);
  }
  .react-app [role="checkbox"]:active::before {
    background-image: linear-gradient(to bottom, hsl(300, 3%, 73%), hsl(300, 3%, 93%) 30%);
  }
  .react-app [role="checkbox"][aria-checked="mixed"]::before,
  .react-app [role="checkbox"][aria-checked="true"]::before {
    border-color: hsl(216, 80%, 50%);
    background: hsl(217, 95%, 68%);
    background-image: linear-gradient(to bottom, hsl(217, 95%, 68%), hsl(216, 80%, 57%));
  }
  .react-app [role="checkbox"][aria-checked="mixed"]::after {
    display: block;
    width: 8px;
    border-bottom: 0.125em solid #fff;
    transform-origin: center center;
  }
  .ltr .react-app [role="checkbox"][aria-checked="mixed"]::after {
    transform: translate(-50%, -50%) rotateZ(45deg);
  }
  .rtl .react-app [role="checkbox"][aria-checked="mixed"]::after {
    transform: translate(-150%, -50%) rotateZ(45deg);
  }
  .react-app [role="checkbox"][aria-checked="mixed"]:active::after,
  .react-app [role="checkbox"][aria-checked="true"]::after {
    display: block;
    width: 0.25em;
    height: 0.4em;
    border: solid #fff;
    border-width: 0 0.125em 0.125em 0;
  }
  .ltr .react-app [role="checkbox"][aria-checked="mixed"]:active::after,
  .ltr .react-app [role="checkbox"][aria-checked="true"]::after {
    transform: translateY(-65%) translateX(-50%) rotate(45deg);
  }
  .rtl .react-app [role="checkbox"][aria-checked="mixed"]:active::after,
  .rtl .react-app [role="checkbox"][aria-checked="true"]::after {
    transform: translateY(-65%) translateX(-210%) rotate(45deg);
  }
  .react-app [role="checkbox"][aria-checked="mixed"]:active::before,
  .react-app [role="checkbox"][aria-checked="true"]:active::before {
    background-image: linear-gradient(to bottom, hsl(216, 80%, 57%), hsl(217, 95%, 68%));
  }
  .react-app [role="checkbox"]:focus {
    outline: none;
  }
  .react-app [role="checkbox"]:focus::before {
    width: 16px;
    height: 16px;
    box-sizing: content-box;
    border-color: hsl(216, 94%, 73%);
    border-width: 3px;
    border-radius: calc(0.2em + 3px);
    box-shadow: inset 0 0 0 1px hsl(216, 80%, 50%);
  }
  .rtl .react-app [role="checkbox"]:focus::before {
    transform: translateX(-25%) translateY(-50%);
  }
  .react-app .fieldset {
    border: none;
    margin: 0;
    padding: 0;
    border-bottom: 1px solid #d2d2d2;
  }
  .react-app .fieldset legend {
    width: 100%;
    padding: 10px 0 8px;
  }
  .react-app .fieldset:first-child legend {
    padding: 20px 0 8px;
  }
  .react-app .group-checkbox-header {
    font-size: 1.2em;
    text-transform: uppercase;
  }
  .react-app .group-checkbox-content {
    max-height: 0;
    z-index: -1;
    transition: 0.4s ease max-height, 0.2s ease padding;
    overflow: hidden;
    padding-left: 4px;
    padding-bottom: 0;
  }
  .react-app .open .group-checkbox-content {
    max-height: 350px;
    z-index: 10;
    transition: 0.6s ease max-height, 0.3s ease padding;
    padding-bottom: 10px;
  }
  .react-app .open.subjects .group-checkbox-content {
    max-height: 700px;
  }
  .react-app .open.a11y-features .group-checkbox-content {
    max-height: 500px;
  }
  .react-app ul.checkboxes.inset li:last-child {
    padding-bottom: 0.5em;
  }
  .react-app select.locale-dropdown {
    width: calc(100% - 3px);
    margin-bottom: 5px;
  }
  .react-app .checkboxes .badge-container {
    margin-bottom: 4px;
  }
  .react-app .checkboxes.inset li:first-child .badge-container {
    margin-top: 4px;
  }
  .react-app .badge-container {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .react-app .badge-container .label {
    max-width: calc(100% - 7px - 24px);
  }
  .react-app .badge-container .badge {
    height: 24px;
    width: 24px;
    padding: 0 0 0 7px;
  }
  .react-app .filterCount {
    color: #6c6c6c;
  }
  .open .react-app .filterCount {
    display: none;
  }
  .react-app .sort-dropdown {
    margin: 0 10px 0 0;
  }
  .react-app .toggle-view-control {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding-top: 16px;
  }
  .react-app .toggle-view-control .selected,
  .react-app .toggle-view-control button:hover {
    color: black;
  }
  .react-app .toggle-view-control button {
    color: #6c6c6c;
    background: none;
    border: none;
    cursor: pointer;
    font-size: 18px;
    padding: 7px;
  }
  .react-app .toggle-view-control .toggle-view-button-holder {
    display: flex;
  }
  .react-app .toggle-view-control .toggle-view-button-holder .dropdown-holder {
    display: flex;
    flex-direction: row;
    align-items: center;
  }
  @media (min-width: 797px) {
    .react-app .toggle-view-control {
      margin: 0 0 0 20px;
      max-width: 974px;
    }
  }
  .react-app .tab-buttons {
    width: 100%;
    border-bottom: 1px solid #d2d2d2;
    text-align: center;
  }
  .react-app .tab-button-container {
    display: inline-block;
    min-width: 100px;
    text-align: center;
  }
  .react-app .tab-button {
    display: inline-block;
    background: transparent;
    cursor: pointer;
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    font-size: 1.45em;
    color: #6c6c6c;
    margin: 4px 8px 0 8px;
    padding: 12px 0 10px;
    border: none;
    border-bottom: 3px solid transparent;
    transition: color 0.2s;
    text-decoration: none;
  }
  .react-app .tab-button:hover,
  .react-app .tab-button:focus {
    color: black;
    transition: color 0.2s;
  }
  .react-app .tab-button:focus {
    outline: 2px solid grey;
  }
  .react-app .tab-button:active {
    outline: none;
  }
  .react-app .tab-button.selected {
    color: black;
    border-color: #e01e5a;
    transition: color 0.2s, border-color 0.2s;
  }
  .react-app #selected-page {
    width: 100%;
  }
  .react-app #filter-page {
    max-width: 1300px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
  }
  .react-app #filter-page-left,
  .react-app #filter-page-right {
    display: inline-block;
    float: left;
  }
  .react-app #browse-page {
    margin: 20px;
    max-width: 1750px;
  }
  @media (min-width: 1750px) {
    .react-app #browse-page {
      margin: 20px auto;
    }
  }
  .react-app .eggplantButton button {
    border: 1px solid rgb(82, 23, 100);
    background: transparent;
    color: rgb(82, 23, 100);
    cursor: pointer;
    font-size: 16px;
    margin: 10px;
    padding: 10px;
  }
  .react-app .eggplantButton button img {
    height: 16px;
    margin-left: 10px;
    vertical-align: bottom;
    transform: rotate(45deg);
    filter: invert(9%) sepia(62%) saturate(4061%) hue-rotate(277deg) brightness(102%) contrast(94%);
  }
  .react-app .eggplantButton button:hover {
    border: 1px solid rgb(82, 23, 100);
    color: white;
    background: rgb(82, 23, 100);
  }
  .react-app .eggplantButton button:hover img {
    filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(314deg) brightness(105%) contrast(101%);
  }
  .react-app .show-filters button,
  .react-app .collapsed-filter-control-header button {
    border: 1px solid rgb(82, 23, 100);
    background: transparent;
    color: rgb(82, 23, 100);
    cursor: pointer;
    font-size: 16px;
    margin: 10px;
    padding: 10px;
  }
  .react-app .show-filters button img,
  .react-app .collapsed-filter-control-header button img {
    height: 16px;
    margin-left: 10px;
    vertical-align: bottom;
    transform: rotate(45deg);
    filter: invert(9%) sepia(62%) saturate(4061%) hue-rotate(277deg) brightness(102%) contrast(94%);
  }
  .react-app .show-filters button:hover,
  .react-app .collapsed-filter-control-header button:hover {
    border: 1px solid rgb(82, 23, 100);
    color: white;
    background: rgb(82, 23, 100);
  }
  .react-app .show-filters button:hover img,
  .react-app .collapsed-filter-control-header button:hover img {
    filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(314deg) brightness(105%) contrast(101%);
  }
  .react-app .clear-filters button {
    border: 1px solid rgb(82, 23, 100);
    background: transparent;
    color: rgb(82, 23, 100);
    cursor: pointer;
    font-size: 16px;
    margin: 10px;
    padding: 10px;
  }
  .react-app .clear-filters button img {
    height: 16px;
    margin-left: 10px;
    vertical-align: bottom;
    transform: rotate(45deg);
    filter: invert(9%) sepia(62%) saturate(4061%) hue-rotate(277deg) brightness(102%) contrast(94%);
  }
  .react-app .clear-filters button:hover {
    border: 1px solid rgb(82, 23, 100);
    color: white;
    background: rgb(82, 23, 100);
  }
  .react-app .clear-filters button:hover img {
    filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(314deg) brightness(105%) contrast(101%);
  }
  .react-app .clear-filters button {
    margin: 16px auto;
    display: block;
  }
  .react-app .breadcrumbs {
    margin-left: 20px;
  }
  .react-app .breadcrumbs button {
    border: 1px solid rgb(82, 23, 100);
    background: transparent;
    color: rgb(82, 23, 100);
    cursor: pointer;
    font-size: 16px;
    margin: 10px;
    padding: 10px;
  }
  .react-app .breadcrumbs button img {
    height: 16px;
    margin-left: 10px;
    vertical-align: bottom;
    transform: rotate(45deg);
    filter: invert(9%) sepia(62%) saturate(4061%) hue-rotate(277deg) brightness(102%) contrast(94%);
  }
  .react-app .breadcrumbs button:hover {
    border: 1px solid rgb(82, 23, 100);
    color: white;
    background: rgb(82, 23, 100);
  }
  .react-app .breadcrumbs button:hover img {
    filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(314deg) brightness(105%) contrast(101%);
  }
  .react-app .breadcrumbs li {
    display: inline;
  }
  .react-app .breadcrumbs button {
    margin: 10px 10px 10px 0;
    background: #f7f4f9;
    padding: 5px 10px;
    font-size: 14px;
  }
  @media (max-width: 796px) {
    .react-app body.filter-visible {
      overflow: hidden;
    }
    .react-app #filter-page .toggle-view-control .toggle-view-button-holder .dropdown-holder {
      display: none;
    }
    .react-app #filter-page .filter-toggle {
      display: flex;
      justify-content: space-between;
      align-items: center;
    }
    .react-app #filter-page .filter-toggle.show-filters button {
      margin-left: 0;
    }
    .react-app #filter-page .filter-toggle.show-filters .sort-dropdown {
      margin-right: 5px;
    }
    .react-app #filter-page .collapsed-filter-control-header {
      background: #f7f4f9;
      color: rgb(82, 23, 100);
      text-align: center;
      display: flex;
      justify-content: space-between;
      padding: 0 20px;
      position: fixed;
      width: 100vw;
      box-sizing: border-box;
      z-index: 20;
    }
    .react-app #filter-page .collapsed-filter-control-header .h1 {
      display: inline-block;
      font-weight: lighter;
      margin: 10px 0;
    }
    .react-app #filter-page .collapsed-filter-control-header .hide-filters-button {
      margin-right: 0;
    }
    .react-app #filter-page #filter-page-left {
      position: fixed;
      top: 0;
      z-index: 210;
      background: white;
      width: 100vw;
      height: 100vh;
      overflow-y: auto;
      box-sizing: border-box;
      left: -100vw;
      transition: left 0.5s;
    }
    .react-app #filter-page #filter-page-left #filter-control {
      padding: 0 20px;
      padding-bottom: 80px;
      margin-top: 64px;
    }
    .react-app #filter-page #filter-page-right {
      width: 100%;
    }
    .react-app #filter-page #filter-page-right .breadcrumbs {
      margin-left: 0;
      margin-top: 10px;
    }
    .react-app #filter-page.filter-visible #filter-page-left {
      left: 0;
      transition: left 0.5s;
    }
  }
  @media (min-width: 797px) {
    .react-app .show-filters,
    .react-app .collapsed-filter-control-header {
      display: none;
    }
    .react-app #filter-page-left {
      width: 240px;
      padding-right: 10px;
    }
    .react-app #filter-page-right {
      min-width: 505px;
      width: calc(100%);
    }
  }
  .react-app .simulation-page .screenshotOverlay {
    z-index: 50;
    margin: 10px;
    padding: 20px;
    border: 2px solid;
    background: white;
    max-width: 430px;
    display: flex;
    justify-self: center;
    height: min-content;
  }
  @media (max-width: 515px) {
    .react-app .simulation-page .screenshotOverlay {
      grid-area: overlay;
    }
  }
  @media (min-width: 516px) {
    .react-app .simulation-page .screenshotOverlay {
      grid-area: playButton;
    }
  }
  .react-app .simulation-page .release-type-callout {
    display: flex;
    padding-top: 10px;
    justify-content: start;
    gap: 5px;
    align-items: center;
    padding-inline: 20px;
    max-width: 1300px;
    margin: auto;
  }
  .react-app .simulation-page .sim-banner-grid {
    display: grid;
  }
  @media (min-width: 516px) {
    .react-app .simulation-page .sim-banner-grid {
      grid-template: 'playButton' 'title';
    }
  }
  @media (max-width: 515px) {
    .react-app .simulation-page .sim-banner-grid {
      grid-template: 'overlay' 'playButton' 'title';
    }
  }
  .react-app .simulation-page .sim-banner-grid .title {
    grid-area: title;
    padding: 20px 20px 10px 20px;
    width: calc(100% - 40px);
    max-width: 1300px;
    margin: auto;
  }
  .react-app .simulation-page .sim-banner-grid .cheerpj-overlay {
    z-index: 50;
    margin: 10px;
    padding: 20px;
    border: 2px solid;
    background: white;
    max-width: 430px;
    display: flex;
    justify-self: center;
    height: min-content;
    border-color: orange;
    font-weight: 300;
  }
  @media (max-width: 515px) {
    .react-app .simulation-page .sim-banner-grid .cheerpj-overlay {
      grid-area: overlay;
    }
  }
  @media (min-width: 516px) {
    .react-app .simulation-page .sim-banner-grid .cheerpj-overlay {
      grid-area: playButton;
    }
  }
  .react-app .simulation-page .sim-banner-grid .cheerpj-overlay .cheerpj-icon {
    height: 50px;
    margin-right: 20px;
  }
  .react-app .simulation-page .sim-banner-grid .cheerpj-overlay .cheerpj-link {
    padding-top: 10px;
    display: block;
  }
  .react-app .simulation-page .flash-warning,
  .react-app .simulation-page .windows-only-overlay {
    z-index: 50;
    margin: 10px;
    padding: 20px;
    border: 2px solid;
    background: white;
    max-width: 430px;
    display: flex;
    justify-self: center;
    height: min-content;
    border-color: red;
  }
  @media (max-width: 515px) {
    .react-app .simulation-page .flash-warning,
    .react-app .simulation-page .windows-only-overlay {
      grid-area: overlay;
    }
  }
  @media (min-width: 516px) {
    .react-app .simulation-page .flash-warning,
    .react-app .simulation-page .windows-only-overlay {
      grid-area: playButton;
    }
  }
  .react-app .simulation-page .flash-warning .warning-icon,
  .react-app .simulation-page .windows-only-overlay .warning-icon {
    margin: 0;
  }
  .react-app .simulation-page .flash-warning .p,
  .react-app .simulation-page .windows-only-overlay .p {
    text-align: left;
    margin-left: 10px;
  }
  .react-app .simulation-page .windows-only-overlay {
    min-width: 300px;
  }
  .react-app .simulation-page .windows-only-overlay .p {
    padding-inline-start: 30px;
  }
  .react-app .simulation-page .link-icons {
    display: flex;
    padding: 10px 20px 20px 20px;
    max-width: 1300px;
    margin: auto;
  }
  .react-app .simulation-page .link-icons .banner-link-icon:hover::before {
    content: '';
    background: rgba(255, 255, 255, 0.2);
    height: 30px;
    width: 40px;
    position: absolute;
  }
  .react-app .simulation-page .link-icons :first-child .banner-link-icon img {
    padding-left: 0;
  }
  .react-app .simulation-page .link-icons .banner-link-icon {
    height: 30px;
    display: block;
  }
  .react-app .simulation-page .link-icons .banner-link-icon.embed-button {
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font-weight: 300;
  }
  .react-app .simulation-page .link-icons .banner-link-icon img {
    height: 30px;
    padding: 0 5px;
  }
  .react-app .simulation-page .error {
    color: red;
    text-align: center;
  }
  .react-app .simulation-page .sim-page-tab-container {
    padding: 20px;
    max-width: 1300px;
    margin: auto;
  }
  .react-app .simulation-page .teachers-panel .alignments-table {
    margin: 20px auto;
    display: flex;
    justify-content: center;
  }
  .react-app .simulation-page .teachers-panel .teachers-header {
    text-align: center;
    font-size: 1.4em;
    font-weight: bold;
    margin: 50px 0 20px 0;
  }
  .react-app .simulation-page .teachers-panel .teachers-header:first-child {
    margin-top: 0;
  }
  .react-app .simulation-page .teachers-panel .tips-link {
    display: block;
    padding: 10px;
    text-transform: none;
    width: max-content;
    margin: 10px auto;
  }
  .react-app .simulation-page .teachers-panel .video-player {
    position: relative;
    max-width: 1200px;
    height: calc(100vh - 170px);
    max-height: 600px;
    margin: auto;
  }
  .react-app .simulation-page .teachers-panel .video-player iframe {
    width: 100%;
    height: 100%;
  }
  .react-app .simulation-page .teachers-panel .video-player.video-player-blocker {
    overflow: hidden;
  }
  .react-app .simulation-page .teachers-panel .video-player.video-player-blocker iframe {
    filter: blur(3px);
  }
  .react-app .simulation-page .teachers-panel .video-player.video-player-blocker .sign-in {
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font-weight: 300;
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgba(100, 100, 100, 0.5);
    text-decoration: none;
  }
  .react-app .simulation-page .teachers-panel .video-player.video-player-blocker .sign-in:focus .p {
    outline: 1px solid #6c6c6c;
  }
  .react-app .simulation-page .teachers-panel .video-player.video-player-blocker .sign-in .modal-container {
    display: flex;
    flex-direction: column;
    background: white;
    padding: 20px;
    border: 1px solid black;
    border-radius: 5px;
  }
  .react-app .simulation-page .teachers-panel .video-player.video-player-blocker .sign-in .lock-img {
    height: 50px;
    object-fit: contain;
    padding: 20px;
  }
  .react-app .simulation-page .teachers-panel .video-player.video-player-blocker .sign-in:hover {
    cursor: pointer;
  }
  .react-app .simulation-page .teachers-panel .video-player .sign-in {
    display: none;
  }
  .react-app .simulation-page .credits-panel {
    padding: 20px;
    max-width: 1300px;
    margin: auto;
  }
  .react-app .simulation-page .credits-panel .column {
    margin: 0 10px;
    display: inline-block;
    vertical-align: top;
  }
  @media (max-width: 799px) {
    .react-app .simulation-page .credits-panel .column {
      width: 100%;
      margin-top: 20px;
    }
    .react-app .simulation-page .credits-panel .column:first-child {
      margin-top: 0;
    }
  }
  @media (min-width: 800px) {
    .react-app .simulation-page .credits-panel .column {
      width: calc(33% - 2 * 10px);
    }
    .react-app .simulation-page .credits-panel .column:first-child {
      margin: 0 10px 0 0;
      width: calc(33% - 10px);
    }
    .react-app .simulation-page .credits-panel .column:last-child {
      margin: 0 0 0 10px;
      width: calc(33% - 10px);
    }
  }
  .react-app .simulation-page .credits-panel .column .ul {
    margin-top: 10px;
  }
  .react-app .simulation-page .credits-panel .column .ul .li {
    list-style: none;
  }
  .react-app .simulation-page .empty-panel {
    text-align: center;
    margin: 60px 0;
  }
  .react-app .simulation-page .sim-page-footer .center {
    display: flex;
    align-items: center;
    flex-direction: column;
    padding: 20px 0 20px 0;
    margin: auto;
    max-width: 900px;
  }
  .react-app .simulation-page .sim-page-footer .related-sims {
    display: flex;
    align-items: center;
    flex-direction: column;
    padding: 20px 0 20px 0;
    margin: auto;
    max-width: 900px;
    max-width: none !important;
  }
  .react-app .simulation-page .sim-page-footer .related-sims .tile {
    background: white;
  }
  .react-app .simulation-page .sim-page-footer .related-sims .film-strip {
    width: 100%;
  }
  .react-app .simulation-page .sim-page-footer .related-sims-background {
    background: #f7f4f9;
  }
  .react-app .simulation-page .sim-page-footer .explore-more {
    display: flex;
    align-items: center;
    flex-direction: column;
    padding: 20px 0 20px 0;
    margin: auto;
    max-width: 900px;
  }
  .react-app .simulation-page .sim-page-footer .explore-more .h3 {
    padding-bottom: 20px;
  }
  .react-app .simulation-page .sim-page-footer .donate {
    display: flex;
    align-items: center;
    flex-direction: column;
    padding: 20px 0 20px 0;
    margin: auto;
    max-width: 900px;
  }
  .react-app .simulation-page .sim-page-footer .donate .p {
    padding-bottom: 20px;
    text-align: center;
  }
  .react-app .simulation-page .translations-panel.sim-page-tab-container {
    max-width: 800px;
    margin-top: 20px;
  }
  .react-app .simulation-page .translations-panel .tr {
    height: 60px;
  }
  .react-app .simulation-page .translations-panel .become-a-translator {
    padding: 20px;
    text-align: center;
  }
  .react-app .simulation-page .translations-panel .simulation-column {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-inline: 5px;
    gap: 10px;
  }
  .react-app .simulation-page .translations-panel .simulation-column .floating-link {
    text-transform: none;
  }
  .react-app .simulation-page .translations-panel .simulation-column .download-sim-button {
    display: flex;
    align-items: center;
  }
  .react-app .simulation-page .translations-panel .simulation-column .download-sim-button img {
    width: 20px;
  }
  .react-app .simulation-page .translations-panel .simulation-column.options-button-container {
    padding: 0;
    margin: -10px -5px;
  }
  .react-app .simulation-page .translations-panel .simulation-column .run-options-translations-button {
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font-weight: 300;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding-inline: 10px;
  }
  .react-app .simulation-page .translations-panel .simulation-column .run-options-translations-button .run-options-title {
    text-align: start;
    padding-inline-end: 5px;
  }
  .react-app .simulation-page .translations-panel .simulation-column .run-options-translations-button .badges {
    display: flex;
    gap: 5px;
  }
  .react-app .simulation-page .translations-panel .language-column .language {
    font-weight: bold;
    margin-right: 2px;
  }
  .react-app .simulation-page .translations-panel .tips-column {
    display: flex;
    justify-content: center;
  }
  .react-app .simulation-page .translations-panel .tips-column-header {
    width: 130px;
    text-align: center;
  }
  .react-app .translated-sims-page .floating-link {
    text-transform: none;
  }
  .react-app .translated-sims-page .sortable-table {
    max-width: 764px;
    margin-inline: auto;
    padding-inline: 20px;
    padding-block: 50px;
  }
  @media (min-width: 1024px) {
    .react-app .submission-guidelines-page .submission-guidelines-page-grid {
      display: grid;
      justify-items: center;
      margin-inline: auto;
      padding-inline: 20px;
      gap: 10px;
      grid-template-columns: 1fr auto;
      max-width: 1300px;
    }
    .react-app .submission-guidelines-page .submission-guidelines-page-grid .section {
      margin-inline: 20px;
    }
    .react-app .submission-guidelines-page .second-section {
      width: 375px;
    }
  }
  @media (max-width: 1023px) {
    .react-app .submission-guidelines-page .second-section {
      max-width: 375px;
    }
  }
  .react-app .submission-guidelines-page .ready-to-upload {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 50px;
    text-align: center;
  }
  .react-app .submission-guidelines-page .sidebar {
    background: rgba(82, 23, 100, 0.05);
    border-radius: 15px;
    padding: 25px;
    display: grid;
    grid-template-areas: 'img header' 'text text';
    grid-template-columns: auto 1fr;
    gap: 5px;
    justify-items: start;
  }
  .react-app .submission-guidelines-page .sidebar .img {
    grid-area: img;
    height: 50px;
    margin-inline-start: -15px;
  }
  .react-app .submission-guidelines-page .sidebar .title {
    grid-area: header;
    align-self: center;
  }
  .react-app .submission-guidelines-page .sidebar .text {
    grid-area: text;
  }
  .react-app .submission-guidelines-page .ul {
    list-style: disc;
  }
  .react-app .submission-guidelines-page .ul,
  .react-app .submission-guidelines-page .ol {
    margin-inline-start: 15px;
  }
  .react-app .submission-guidelines-page .question,
  .react-app .submission-guidelines-page .answer {
    font-weight: 300;
    line-height: 1.3;
  }
  .react-app .submission-guidelines-page .bold {
    font-weight: 400;
  }
  .react-app .submission-guidelines-page .container {
    margin-bottom: 50px;
  }
  .react-app .submission-guidelines-page .section {
    margin-inline: auto;
    max-width: 850px;
    padding-bottom: 96px;
    display: flex;
    row-gap: 16px;
    flex-direction: column;
    padding-inline: 20px;
  }
  .react-app .submission-guidelines-page .section.first-section {
    row-gap: 0;
  }
  .react-app .submission-guidelines-page .section.first-section .h2 {
    padding-bottom: 16px;
  }
  .react-app .submission-guidelines-page .section .spinner {
    padding-block: 20px;
  }
  .react-app .submission-guidelines-page .section .minor-section {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-bottom: 32px;
  }
  .react-app .submission-guidelines-page .section .minor-section:last-child {
    padding-bottom: 0;
  }
  .react-app .submission-guidelines-page .eggplant-button {
    align-self: center;
  }
  .react-app .page-content {
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
  }
  .react-app #virtual-workshop-page {
    width: 100%;
    height: 100%;
  }
  .react-app #virtual-workshop-page .banner-container::before {
    background-image: url("/assets/img/banner_classroom.png");
  }
  .react-app #virtual-workshop-page #virtual-workshop-main {
    height: 100%;
    max-width: 1072px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
  }
  .react-app #virtual-workshop-page .container.workshop {
    background: #B2C2CA;
  }
  .react-app #virtual-workshop-page #virtual-workshop-left {
    width: 252px;
    height: calc(100vh - 63px - 10px);
    position: absolute;
    overflow-y: scroll;
    padding-bottom: 10px;
  }
  .react-app #virtual-workshop-page #virtual-workshop-left.fixed {
    position: fixed;
    top: 63px;
  }
  .react-app #virtual-workshop-page #virtual-workshop-left.sticky-bottom {
    bottom: 0;
  }
  .react-app #virtual-workshop-page #virtual-workshop-right {
    padding-top: 32px;
  }
  .ltr .react-app #virtual-workshop-page #virtual-workshop-right {
    margin-left: 272px;
  }
  .rtl .react-app #virtual-workshop-page #virtual-workshop-right {
    margin-right: 272px;
  }
  .react-app #virtual-workshop-page .major-section {
    padding-top: 40px;
    border-top: 1px solid #d2d2d2;
    margin-bottom: 30px;
  }
  .react-app #virtual-workshop-page .major-section:first-child {
    border: none;
    padding-top: 0;
  }
  .react-app #virtual-workshop-page .major-section:nth-child(n+3) {
    margin-top: 50px;
  }
  .react-app #virtual-workshop-page .h1 {
    line-height: 36px;
  }
  .react-app #virtual-workshop-page h2:first-child {
    margin-top: 0;
  }
  .react-app #virtual-workshop-page .h4-vw {
    font-size: 1.3em;
    font-weight: 600;
  }
  .react-app #virtual-workshop-page p {
    font-weight: 300;
    line-height: 1.3em;
  }
  .react-app #virtual-workshop-page p.italics {
    font-style: italic;
  }
  .react-app #virtual-workshop-page a .inline-link:visited,
  .react-app #virtual-workshop-page a.inline-link:visited {
    color: #6c6c6c;
  }
  .react-app #virtual-workshop-page a .inline-link:hover,
  .react-app #virtual-workshop-page a.inline-link:hover {
    color: #e01e5a;
    text-decoration: underline;
  }
  .react-app #virtual-workshop-page .header-line {
    display: flex;
    justify-content: space-between;
    margin-top: 30px;
  }
  .react-app #virtual-workshop-page .header-line:first-child {
    margin-top: 0;
  }
  .react-app #virtual-workshop-page .header-link:focus {
    text-decoration: underline;
    outline: none;
  }
  .react-app #virtual-workshop-page .header {
    margin-bottom: 20px;
  }
  .react-app #virtual-workshop-page .section-item {
    margin-bottom: 24px;
    max-width: 800px;
  }
  .react-app #virtual-workshop-page .sub-header {
    padding-top: 50px;
  }
  .react-app #virtual-workshop-page .back-to-nav-container {
    position: relative;
    height: 20px;
  }
  .react-app #virtual-workshop-page .back-to-nav-link {
    position: absolute;
    bottom: 0;
    color: #6c6c6c;
  }
  .ltr .react-app #virtual-workshop-page .back-to-nav-link {
    left: -10000px;
  }
  .rtl .react-app #virtual-workshop-page .back-to-nav-link {
    right: -10000px;
  }
  .ltr .react-app #virtual-workshop-page .back-to-nav-link:focus {
    left: 0;
  }
  .rtl .react-app #virtual-workshop-page .back-to-nav-link:focus {
    right: 0;
  }
  .react-app #virtual-workshop-page .time {
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }
  .react-app #virtual-workshop-page .time img {
    width: 30px;
  }
  .ltr .react-app #virtual-workshop-page .time img {
    margin-left: 14px;
  }
  .rtl .react-app #virtual-workshop-page .time img {
    margin-right: 14px;
  }
  .react-app #virtual-workshop-page .text-with-icon,
  .react-app #virtual-workshop-page .list-with-icon {
    display: flex;
    justify-content: flex-start;
  }
  .react-app #virtual-workshop-page .text-with-icon.short {
    align-items: center;
  }
  .react-app #virtual-workshop-page .text-with-icon.medium {
    align-items: center;
  }
  .react-app #virtual-workshop-page .text-with-icon.long {
    align-items: flex-start;
  }
  .react-app #virtual-workshop-page .list-with-icon {
    align-items: flex-start;
  }
  .react-app #virtual-workshop-page .time-max-width {
    max-width: 480px;
  }
  .react-app #virtual-workshop-page .small-font {
    font-size: 12px;
  }
  .react-app #virtual-workshop-page .download-link {
    display: flex;
    justify-content: flex-start;
    align-items: center;
  }
  .react-app #virtual-workshop-page .download-link img {
    height: 16px;
  }
  .ltr .react-app #virtual-workshop-page .download-link img {
    margin-left: 8px;
  }
  .rtl .react-app #virtual-workshop-page .download-link img {
    margin-right: 8px;
  }
  .react-app #virtual-workshop-page .video,
  .react-app #virtual-workshop-page .sim,
  .react-app #virtual-workshop-page .container-centered {
    display: flex;
    justify-content: center;
  }
  .react-app #virtual-workshop-page .sim {
    position: relative;
  }
  .react-app #virtual-workshop-page .sim .hidden-under-iframe {
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: -1;
    max-width: 200px;
    transform: translate(-50%, -50%);
  }
  .react-app #virtual-workshop-page .sim iframe {
    border: none;
    height: 390px;
  }
  .react-app #virtual-workshop-page .goal-prompt {
    max-width: 660px;
    border: 1px solid;
    border-radius: 3px;
  }
  .react-app #virtual-workshop-page .goal-prompt-container {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    margin: 20px 26px;
  }
  .react-app #virtual-workshop-page .goal-prompt-container p {
    margin-top: 4px;
  }
  .react-app #virtual-workshop-page .goal-prompt img,
  .react-app #virtual-workshop-page .text-with-icon img,
  .react-app #virtual-workshop-page .list-with-icon img {
    width: 40px;
    min-width: 40px;
  }
  .ltr .react-app #virtual-workshop-page .goal-prompt img,
  .ltr .react-app #virtual-workshop-page .text-with-icon img,
  .ltr .react-app #virtual-workshop-page .list-with-icon img {
    margin-right: 20px;
  }
  .rtl .react-app #virtual-workshop-page .goal-prompt img,
  .rtl .react-app #virtual-workshop-page .text-with-icon img,
  .rtl .react-app #virtual-workshop-page .list-with-icon img {
    margin-left: 20px;
  }
  .react-app #virtual-workshop-page ul.list-text {
    list-style: disc outside none;
  }
  .ltr .react-app #virtual-workshop-page ul.list-text {
    margin-left: 16px;
  }
  .rtl .react-app #virtual-workshop-page ul.list-text {
    margin-right: 16px;
  }
  .react-app #virtual-workshop-page ul.list-text li {
    margin-bottom: 0.25em;
  }
  .react-app #virtual-workshop-page ul.vw-table,
  .react-app #virtual-workshop-page ul.vw-table-column {
    display: flex;
  }
  .react-app #virtual-workshop-page ul.vw-table {
    justify-content: space-between;
    border: 1px solid;
    border-radius: 3px;
    padding: 20px 20px 0 20px;
  }
  .react-app #virtual-workshop-page ul.vw-table ul.vw-table-column {
    flex-direction: column;
    align-content: flex-start;
    min-width: 180px;
  }
  .ltr .react-app #virtual-workshop-page ul.vw-table ul.vw-table-column {
    margin-right: 20px;
  }
  .rtl .react-app #virtual-workshop-page ul.vw-table ul.vw-table-column {
    margin-left: 20px;
  }
  .react-app #virtual-workshop-page ul.vw-table ul.vw-table-column .sub-header {
    padding-top: 0;
    padding-bottom: 30px;
  }
  .react-app #virtual-workshop-page ul.vw-table ul.vw-table-column .text-with-icon {
    margin-bottom: 24px;
  }
  .react-app #virtual-workshop-page .google-form .recaptcha-container {
    padding: 10px 0;
    margin-bottom: 14px;
  }
  .react-app #virtual-workshop-page .extra-space {
    height: 600px;
    width: 100px;
  }
  .react-app #virtual-workshop-page #timeline .bar {
    position: absolute;
    top: 24px;
    width: 6px;
    z-index: 0;
  }
  .ltr .react-app #virtual-workshop-page #timeline .bar {
    right: 26px;
  }
  .rtl .react-app #virtual-workshop-page #timeline .bar {
    left: 26px;
  }
  .react-app #virtual-workshop-page #timeline #background-bar {
    background: #adadad;
  }
  .react-app #virtual-workshop-page #timeline #progress-bar {
    height: 0;
    background: black;
  }
  .react-app #virtual-workshop-page #timeline button.open-close-button,
  .react-app #virtual-workshop-page #timeline button.close-button {
    display: none;
  }
  .react-app #virtual-workshop-page #timeline .sections {
    margin-top: 24px;
    position: relative;
    z-index: 10;
  }
  .ltr .react-app #virtual-workshop-page #timeline .sections {
    margin-right: 10px;
  }
  .rtl .react-app #virtual-workshop-page #timeline .sections {
    margin-left: 10px;
  }
  .react-app #virtual-workshop-page #timeline .sections p,
  .react-app #virtual-workshop-page #timeline .sections h3 {
    color: #6c6c6c;
  }
  .ltr .react-app #virtual-workshop-page #timeline .sections p,
  .ltr .react-app #virtual-workshop-page #timeline .sections h3 {
    margin-left: auto;
    text-align: right;
  }
  .rtl .react-app #virtual-workshop-page #timeline .sections p,
  .rtl .react-app #virtual-workshop-page #timeline .sections h3 {
    margin-right: auto;
    text-align: left;
  }
  .react-app #virtual-workshop-page #timeline .sections h3 {
    font-weight: 600;
  }
  .ltr .react-app #virtual-workshop-page #timeline .sections h3 {
    margin-right: 10px;
  }
  .rtl .react-app #virtual-workshop-page #timeline .sections h3 {
    margin-left: 10px;
  }
  .react-app #virtual-workshop-page #timeline .sections p {
    margin-top: 0;
    margin-bottom: 0;
  }
  .ltr .react-app #virtual-workshop-page #timeline .sections p {
    margin-right: 22px;
  }
  .rtl .react-app #virtual-workshop-page #timeline .sections p {
    margin-left: 22px;
  }
  .react-app #virtual-workshop-page #timeline .item-li a {
    text-decoration: none;
  }
  .react-app #virtual-workshop-page #timeline .item-li a:focus {
    outline: none;
  }
  .react-app #virtual-workshop-page #timeline .item-li a:focus .item {
    outline: 2px solid grey;
  }
  .react-app #virtual-workshop-page #timeline .item {
    display: flex;
    align-items: center;
  }
  .ltr .react-app #virtual-workshop-page #timeline .item {
    margin-left: 2px;
  }
  .rtl .react-app #virtual-workshop-page #timeline .item {
    margin-right: 2px;
  }
  .react-app #virtual-workshop-page #timeline .item:hover {
    cursor: pointer;
  }
  .react-app #virtual-workshop-page #timeline .item:hover :first-child {
    text-decoration: underline;
  }
  .react-app #virtual-workshop-page #timeline .marker {
    background: white;
    border-radius: 50%;
  }
  .react-app #virtual-workshop-page #timeline .major-marker {
    height: 22px;
    width: 22px;
    min-width: 22px;
    border: 8px solid;
    margin: 15px 0;
  }
  .react-app #virtual-workshop-page #timeline .minor-marker {
    height: 10px;
    width: 10px;
    min-width: 10px;
    border: 2px solid;
    margin-top: 7px;
    margin-bottom: 7px;
  }
  .ltr .react-app #virtual-workshop-page #timeline .minor-marker {
    margin-right: 12px;
  }
  .rtl .react-app #virtual-workshop-page #timeline .minor-marker {
    margin-left: 12px;
  }
  .react-app #virtual-workshop-page #timeline li:first-child .major-marker {
    margin: 0;
  }
  @media (min-width: 911px) {
    .react-app #virtual-workshop-page #virtual-workshop-left::-webkit-scrollbar {
      width: 0;
    }
  }
  @media (max-width: 910px) {
    .react-app #virtual-workshop-page #virtual-workshop-left {
      z-index: 10;
      background: rgba(255, 255, 255, 0.9);
    }
    .ltr .react-app #virtual-workshop-page #virtual-workshop-left {
      left: -194px;
      transition: left 0.5s;
    }
    .rtl .react-app #virtual-workshop-page #virtual-workshop-left {
      right: -194px;
      transition: right 0.5s;
    }
    .react-app #virtual-workshop-page #virtual-workshop-left #timeline button.open-close-button {
      position: absolute;
      width: 52px;
      background: transparent;
      border: none;
      cursor: pointer;
      display: block;
      z-index: 20;
    }
    .ltr .react-app #virtual-workshop-page #virtual-workshop-left #timeline button.open-close-button {
      right: 3px;
    }
    .rtl .react-app #virtual-workshop-page #virtual-workshop-left #timeline button.open-close-button {
      left: 3px;
    }
    .react-app #virtual-workshop-page #virtual-workshop-left #timeline button.close-button {
      display: none;
    }
    .react-app #virtual-workshop-page #virtual-workshop-left.open {
      width: 310px;
      border: 1px solid #6c6c6c;
      height: calc(100vh - 63px - 10px - 1px - 1px);
    }
    .ltr .react-app #virtual-workshop-page #virtual-workshop-left.open {
      left: -2px;
    }
    .rtl .react-app #virtual-workshop-page #virtual-workshop-left.open {
      right: -2px;
    }
    .react-app #virtual-workshop-page #virtual-workshop-left.open #timeline button.open-close-button {
      width: 40px;
      top: 23px;
      background: no-repeat center / 30% url("/_m/img/back-arrow-icon.png");
    }
    .ltr .react-app #virtual-workshop-page #virtual-workshop-left.open #timeline button.open-close-button {
      right: 1px;
    }
    .rtl .react-app #virtual-workshop-page #virtual-workshop-left.open #timeline button.open-close-button {
      left: 1px;
      transform: scaleX(-1);
    }
    .react-app #virtual-workshop-page #virtual-workshop-left.open #timeline button.close-button {
      display: block;
      position: fixed;
      width: 100%;
      height: 100%;
      background: transparent;
      border: none;
    }
    .react-app #virtual-workshop-page #virtual-workshop-left.open #timeline button.open-close-button:active,
    .react-app #virtual-workshop-page #virtual-workshop-left.open #timeline button.close-button:active {
      outline: none;
    }
    .ltr .react-app #virtual-workshop-page #virtual-workshop-left.open #timeline .bar {
      right: 56px;
    }
    .rtl .react-app #virtual-workshop-page #virtual-workshop-left.open #timeline .bar {
      left: 56px;
    }
    .ltr .react-app #virtual-workshop-page #virtual-workshop-left.open #timeline .sections {
      margin-right: 40px;
    }
    .rtl .react-app #virtual-workshop-page #virtual-workshop-left.open #timeline .sections {
      margin-left: 40px;
    }
    .react-app #virtual-workshop-page #virtual-workshop-left.closed::-webkit-scrollbar {
      width: 0;
    }
    .ltr .react-app #virtual-workshop-page #virtual-workshop-right {
      margin-left: 40px;
    }
    .rtl .react-app #virtual-workshop-page #virtual-workshop-right {
      margin-right: 40px;
    }
    .react-app #virtual-workshop-page #virtual-workshop-right ul.vw-table {
      flex-direction: column;
      justify-content: flex-start;
    }
    .ltr .react-app #virtual-workshop-page #virtual-workshop-right ul.vw-table ul.vw-table-column {
      margin-right: 0;
    }
    .rtl .react-app #virtual-workshop-page #virtual-workshop-right ul.vw-table ul.vw-table-column {
      margin-left: 0;
    }
    .react-app #virtual-workshop-page #virtual-workshop-right ul.vw-table > li {
      margin-bottom: 20px;
    }
    .react-app #virtual-workshop-page #virtual-workshop-right ul.vw-table > li:last-child {
      margin-bottom: 0;
    }
    .react-app #virtual-workshop-page #virtual-workshop-right .time-max-width {
      max-width: inherit;
    }
  }
  @media (max-width: 600px) {
    .react-app #virtual-workshop-page #virtual-workshop-right .header-line {
      flex-direction: column;
    }
    .react-app #virtual-workshop-page #virtual-workshop-right .header-line .time {
      justify-content: flex-start;
      margin-bottom: 20px;
    }
    .react-app #virtual-workshop-page #virtual-workshop-right .header-line .time img {
      order: -1;
      width: 40px;
    }
    .ltr .react-app #virtual-workshop-page #virtual-workshop-right .header-line .time img {
      margin-left: 0;
      margin-right: 20px;
    }
    .rtl .react-app #virtual-workshop-page #virtual-workshop-right .header-line .time img {
      margin-right: 0;
      margin-left: 20px;
    }
    .react-app #virtual-workshop-page #virtual-workshop-right .sim iframe {
      height: 290px;
    }
  }
  @media (max-width: 500px) {
    .react-app #virtual-workshop-page #virtual-workshop-right .text-with-icon.medium {
      align-items: flex-start;
    }
  }
  .react-app .virtual-workshop-landing-page .header-text {
    max-width: 800px;
    padding: 20px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 20px;
  }
  .react-app .virtual-workshop-landing-page .links {
    display: grid;
    margin: 36px auto;
    padding: 0 20px;
    max-width: 1000px;
  }
  .react-app .virtual-workshop-landing-page .links .curly-arrow {
    grid-column: 1 / 3;
    height: 65px;
    margin: 0 auto;
  }
  .react-app .virtual-workshop-landing-page .links .curly-arrow.short {
    height: 30px;
  }
  @media (max-width: 649px) {
    .react-app .virtual-workshop-landing-page .links .curly-arrow.wide {
      display: none;
    }
  }
  @media (min-width: 650px) {
    .react-app .virtual-workshop-landing-page .links .curly-arrow.narrow {
      display: none;
    }
  }
  .react-app .virtual-workshop-landing-page .links .virtual-workshop-link {
    display: grid;
    grid-column: 1 / 3;
    grid-template-areas: 'sidebar padding-top padding-top' 'sidebar icon title' 'sidebar icon description' 'sidebar icon time' 'sidebar padding-bottom padding-bottom';
    grid-template-columns: 12px auto 1fr;
    gap: 14px;
    padding-right: 10px;
    text-decoration: none;
    border: 1px solid;
    border-radius: 10px;
  }
  .react-app .virtual-workshop-landing-page .links .virtual-workshop-link,
  .react-app .virtual-workshop-landing-page .links .virtual-workshop-link:active,
  .react-app .virtual-workshop-landing-page .links .virtual-workshop-link:visited {
    color: black;
  }
  .react-app .virtual-workshop-landing-page .links .virtual-workshop-link:hover,
  .react-app .virtual-workshop-landing-page .links .virtual-workshop-link:focus {
    box-shadow: 0 0 6px 1px #d2d2d2;
    outline: none;
  }
  .react-app .virtual-workshop-landing-page .links .virtual-workshop-link:hover .title,
  .react-app .virtual-workshop-landing-page .links .virtual-workshop-link:focus .title {
    text-decoration: underline;
  }
  @media (max-width: 649px) {
    .react-app .virtual-workshop-landing-page .links .virtual-workshop-link {
      grid-template-areas: 'sidebar padding-top' 'sidebar icon' 'sidebar title' 'sidebar description' 'sidebar time' 'sidebar padding-bottom';
      grid-template-columns: 12px 1fr;
    }
    .react-app .virtual-workshop-landing-page .links .virtual-workshop-link .sidebar {
      grid-row: 1 / 7;
    }
    .react-app .virtual-workshop-landing-page .links .virtual-workshop-link .icon {
      margin: 5px auto 0;
    }
  }
  @media (min-width: 650px) {
    .react-app .virtual-workshop-landing-page .links .virtual-workshop-link.math {
      grid-column: 1 / 2;
      margin-inline-end: 10px;
    }
    .react-app .virtual-workshop-landing-page .links .virtual-workshop-link.science {
      grid-column: 2 / 3;
      margin-inline-start: 10px;
    }
    .react-app .virtual-workshop-landing-page .links .virtual-workshop-link .sidebar {
      grid-row: 1 / 6;
    }
    .react-app .virtual-workshop-landing-page .links .virtual-workshop-link .icon {
      margin: 8px 0 0;
    }
  }
  .react-app .virtual-workshop-landing-page .links .virtual-workshop-link .sidebar {
    border-bottom-left-radius: calc(10px - 1px);
    border-top-left-radius: calc(10px - 1px);
  }
  .react-app .virtual-workshop-landing-page .links .virtual-workshop-link .icon {
    grid-area: icon;
    width: 50px;
  }
  .react-app .virtual-workshop-landing-page .links .virtual-workshop-link .title {
    grid-area: title;
    margin: 3px 0;
  }
  .react-app .virtual-workshop-landing-page .links .virtual-workshop-link .description {
    grid-area: description;
  }
  .react-app .virtual-workshop-landing-page .links .virtual-workshop-link .time {
    grid-area: time;
    display: flex;
    flex-direction: row;
    gap: 8px;
  }
  .react-app .virtual-workshop-landing-page .links .virtual-workshop-link .time .time-icon {
    width: 20px;
  }
  .react-app .sign-in-page.login-form .login-donate-ask {
    background: transparent;
  }
  .react-app .login-donate-ask .texts-container {
    display: grid;
    gap: 20px;
  }
  @media (min-width: 730px) {
    .react-app .login-donate-ask .texts-container {
      grid-template-areas: "image text1" "image text2";
      grid-template-rows: auto 1fr;
    }
  }
  @media (max-width: 729px) {
    .react-app .login-donate-ask .texts-container {
      grid-template-areas: "image" "text1" "text2";
    }
    .react-app .login-donate-ask .texts-container .donation-image-grid {
      justify-self: center;
    }
  }
  .react-app .login-donate-ask .texts-container .donation-image-grid {
    grid-area: image;
  }
  .react-app .login-donate-ask .texts-container .login-donate-ask-text1 {
    grid-area: text1;
  }
  .react-app .login-donate-ask .texts-container .login-donate-ask-text2 {
    grid-area: text2;
  }
  .react-app .login-donate-ask .button-container {
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    gap: 20px;
    margin-top: 20px;
  }
  @media (min-width: 646px) {
    .react-app .login-donate-ask .button-container {
      flex-direction: row;
    }
  }
  @media (max-width: 645px) {
    .react-app .login-donate-ask .button-container {
      flex-direction: column-reverse;
    }
  }
  .react-app .login-donate-ask .button-container .floating-link {
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font-weight: 300;
    text-transform: none;
  }
  .react-app .login-donate-ask .donation-image-grid {
    position: relative;
  }
  .react-app .login-donate-ask .donation-image-grid .donation-image-img {
    height: 250px;
  }
  .react-app .login-donate-ask .donation-image-grid .donation-image-text {
    position: absolute;
    margin: 10px;
    top: 84px;
    left: 0;
    height: 81px;
    width: 254px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 500;
  }
  .react-app .login-update-profile {
    display: grid;
    gap: 20px;
  }
  @media (min-width: 680px) {
    .react-app .login-update-profile {
      grid-template-areas: "image text" "image buttons";
      grid-template-rows: 1fr auto;
    }
  }
  @media (max-width: 679px) {
    .react-app .login-update-profile {
      grid-template-areas: "image" "text" "buttons";
    }
    .react-app .login-update-profile .update-profile-image-grid,
    .react-app .login-update-profile .text-container,
    .react-app .login-update-profile .button-container {
      justify-self: center;
    }
    .react-app .login-update-profile .text-container {
      text-align: center;
    }
  }
  .react-app .login-update-profile .update-profile-image-grid {
    position: relative;
    grid-area: image;
  }
  .react-app .login-update-profile .update-profile-image-grid .update-profile-image-img {
    height: 250px;
  }
  .react-app .login-update-profile .update-profile-image-grid .update-profile-image-text {
    position: absolute;
    margin: 10px;
    top: 3px;
    left: 2px;
    height: 55px;
    width: 167px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 500;
  }
  .react-app .login-update-profile .text-container {
    grid-area: text;
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: 10px;
  }
  .react-app .login-update-profile .button-container {
    grid-area: buttons;
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 20px;
    margin-top: 20px;
  }
  @media (min-width: 646px) {
    .react-app .login-update-profile .button-container {
      flex-direction: row;
    }
  }
  @media (max-width: 645px) {
    .react-app .login-update-profile .button-container {
      flex-direction: column-reverse;
    }
  }
  .react-app .login-update-profile .button-container .floating-link {
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    font-weight: 300;
    text-transform: none;
  }
  .react-app .sign-in-page {
    max-width: 600px;
    margin: auto;
  }
  .react-app .sign-in-page.login-form {
    position: relative;
    z-index: 1;
  }
  .react-app .sign-in-page.login-form .sign-in-panel,
  .react-app .sign-in-page.login-form .login-update-profile,
  .react-app .sign-in-page.login-form .login-donate-ask {
    border: 0;
    margin: 20px auto;
    padding: 30px;
  }
  .react-app .login-form {
    width: 100vw;
  }
  .react-app .login-form .sign-in-panel {
    display: grid;
    gap: 5px 40px;
  }
  @media (max-width: 600px) {
    .react-app .login-form .sign-in-panel {
      grid-template-areas: "header" "error" "email" "password" "forgot" "submit" "register" "resend" "clever";
    }
  }
  @media (min-width: 601px) {
    .react-app .login-form .sign-in-panel {
      grid-template-areas: "header header" "error error" "email email" "password password" "forgot forgot" "submit submit" "register resend" "clever clever";
    }
    .react-app .login-form .sign-in-panel .resend {
      justify-self: end;
    }
  }
  .react-app .login-form .sign-in-panel .header {
    grid-area: header;
  }
  .react-app .login-form .sign-in-panel .error {
    grid-area: error;
  }
  .react-app .login-form .sign-in-panel .email {
    grid-area: email;
  }
  .react-app .login-form .sign-in-panel .password {
    grid-area: password;
  }
  .react-app .login-form .sign-in-panel .forgot {
    grid-area: forgot;
    justify-self: end;
  }
  .react-app .login-form .sign-in-panel .submit {
    grid-area: submit;
    justify-self: center;
  }
  .react-app .login-form .sign-in-panel .resend {
    grid-area: resend;
  }
  .react-app .login-form .sign-in-panel .register {
    grid-area: register;
  }
  .react-app .login-form .sign-in-panel .clever {
    grid-area: clever;
    justify-self: center;
  }
  .react-app .login-form .sign-in-panel .label {
    display: grid;
    gap: 5px;
  }
  .react-app .login-form .sign-in-panel .label.password {
    grid-template-areas: "label-area" "input-area";
  }
  .react-app .login-form .sign-in-panel .label.password .label-area {
    grid-area: label-area;
  }
  .react-app .login-form .sign-in-panel .label.password .input-area {
    grid-area: input-area;
  }
  .react-app .login-form .sign-in-panel .show-hide-password {
    background: none;
    border: none;
    justify-self: end;
    padding: 0 8px 5px 0;
    color: grey;
  }
  .react-app .login-form .sign-in-panel .p,
  .react-app .login-form .sign-in-panel .eggplant-button,
  .react-app .login-form .sign-in-panel .clever {
    margin-top: 15px;
  }
  .react-app .login-form .sign-in-panel .input {
    padding: 5px;
    margin-bottom: 5px;
  }
  .react-app .login-form .sign-in-panel .clever {
    display: block;
    margin-inline: auto;
  }
  .react-app .login-form .sign-in-panel .error {
    color: red;
  }
  .react-app .error-list {
    color: red;
    grid-area: error-list;
  }
  .react-app .error-list ul li {
    list-style: disc;
    margin-inline-start: 30px;
  }
  .react-app .email-confirmed-page {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin: 50px 20px;
    padding-bottom: 200px;
  }
  .react-app .change-email-page {
    margin: 50px 20px;
  }
  .react-app .change-email-page .section {
    margin-inline: auto;
    max-width: 850px;
    padding-bottom: 96px;
    display: flex;
    row-gap: 16px;
    flex-direction: column;
    padding-inline: 20px;
  }
  .react-app .change-email-page .section .eggplant-button {
    align-self: center;
  }
  .react-app .user-misc-form {
    padding-inline: 20px;
    margin-inline: auto;
    margin-block: 40px;
    display: flex;
    flex-direction: column;
    max-width: 620px;
  }
  .react-app .user-misc-form .false-input {
    background: transparent;
    border: none;
    color: black;
  }
  .react-app .user-misc-form .label {
    display: block;
    padding-block: 15px 5px;
  }
  .react-app .user-misc-form .input {
    padding: 5px;
    margin-bottom: 5px;
  }
  .react-app .user-misc-form .submit-button {
    align-self: center;
    margin: 20px;
  }
  ::before {
    box-sizing: unset;
}